세이박스

[개발스토리] 다음 뉴스송고API 제휴신청

기타
뉴스 사이트를 운영하기 위한 필 수 조건이 바로 네이버, 다음 뉴스 검색 제휴 입니다.
1월달 즈음에 다음 공지에 엡크롤링 서비스가 6월까지 운영하고 중지 되며, 기사 송고 API 방식을 도입한다고 했었습니다.
해당 송고API 방식을 도입하기 위해 이달 5월1일 부터 접수를 받고 있다고 합니다.
하지만, 아직 대부분 언론사들이 도입을 하고 있지 않은 것 같습니다.
아마도 한참 준비 중일수도 있겠네요.
다음 내요은 다음에 올라온 공지 내용을 잘 정리 한 내용 입니다.

아래 내용 출처 : http://www.koreainews.com/_Ass_board/ass_board_20.php?number=1791&mode=view
daum에서 제공하던 웹크롤링 서비스가 6월30일 종료되고 새로운 서비스를 시작합니다. "뉴스송고API" 입점신청은 5월 1일부터 가능하며 기존 웹크롤링 제휴사 역시 신규입점을 신청해야 합니다.

기존 웹크롤링서비스와의 차이점은

입점 기준이 1년에서 6개월로 줄어들었습니다. Olle~

웹크롤링은 다음에서 기사를 조회해서 이런저런 기준없이 기사를 다음에 링크시켰다면 이번 뉴스송고API는 언론사가 원하는 기사만 다음에 링크할 수 있다는 점입니다.

추천위젯이 설치되고 그것을 클릭하면 Myview로 기사가 송고되고(10분 이내) view로 송고된 기사는 daum뉴스검색에 반영됩니다.(30분 이내) - 최대40분소요(어디까지나 최악의 경우입니다.)

Myview를 통해 daum 뉴스검색에 나오는 기사를 삭제할 수 있습니다.(기사 수정은 불가합니다.) - 수정을 원할땐 view에서 삭제한 후 수정된 기사를 재송고 하면 되겠죠?^^

일일 송고는 200건으로 제한되어 있습니다.


제휴기준은

오프라인, 온라인 등이 정기간행물 등록일로부터 6개월 이상 된 매체만 가능합니다. 6개월이 안된 언론사는 6개월이 지난 시점에 신청하면 됩니다.(10년간 언론사를 운영하다 제호명이 바뀌어 정기간행물 등록상 3개월 밖에 안될 경우 입점이 불가합니다. 다음은 정기간행물 등록일을 조회하고 그것을 기준으로 합니다.)

자체 기사가 지속적으로 생산되어야 합니다.
자체 생산 기사수가 월100건 이상이어야 하며 최근 6개월 동안 지속적으로 자체기사가 생산된 매체만 가능합니다.(성인, 유료서비스 제외)

daum에 제휴된 기사의 저작권은 daum이 아니라 여러분들에게 있으며 법적문제도 여러분들에게 있습니다.


신청 방법입니다.
먼저 daum에 신청하는 사업자명의 아이디가 있어야 됩니다. - 사업자로 회원가입 http://v.daum.net/user/join에 회원 등록 (Myview페이지를 만드는 과정입니다.)

첨부된 뉴스송고API신청서(첨부파일 진한 글씨만 채우세요)와 사업자등록증을 pdf로 파일변환해서 이메일 webnews@daumcorp.com으로 보냅니다.

뉴스 관련 온라인 서비스를 관리 하시는분에게 도움이 되는 글이라 생각해서 올려 봅니다.
^^

mssql 전체 테이블 문자 검색 변경

데이타베이스
 
어느날 갑자기 DB에 "<script src=http://...></script>" 와 같은 내용이 삽입 된경우는 스크립트 삽입 공격을 받으신 겁니다.
 
참고로, 구글(http://www.google.co.kr) 에서 "<script src=http://...></script>" 내용을 검색해보세요.
국내 사이트중 어마어마 하게 많이 공격받은걸 확인 하실 수 있을겁니다.
 
MSSQL 을 사용중인 서버들이 공격 대상입니다.
항상 느끼는거지만 윈도우 관련 서버들이 취약점이 많다 보니 이런 문제가 생기는 것 같네요 저도 더 자세히 관련 공격 원인과 방어를 찾아봐야겠지마 끝이 없는듯 ㅡㅡ;
 
그럼, 테이블 마다 일일이 삽입된 스크립트를 일일이 지우는것도 끝이 없죠 그래서 다음과 같이 쿼리를 실행 해주시면 문제의 스크립트가 있는 테이블, 컬럼을 일일이 자동으로 찾아서 삭제 해줍니다.
 
 
DECLARE @T varchar(255), @C varchar(255);
DECLARE Table_Cursor CURSOR FOR
SELECT a.name, b.name
FROM sysobjects a, syscolumns b
WHERE a.id = b.id AND a.xtype = 'u' AND
(b.xtype = 99 OR
b.xtype = 35 OR
b.xtype = 231 OR
b.xtype = 167);
OPEN Table_Cursor;
FETCH NEXT FROM Table_Cursor INTO @T, @C;
WHILE (@@FETCH_STATUS = 0) BEGIN
  EXEC(
    'update ['+@T+'] set ['+@C+'] = left(
            convert(varchar(8000), ['+@C+']),
            len(convert(varchar(8000), ['+@C+'])) - 6 -
            patindex(''%tpircs<%'',
                      reverse(convert(varchar(8000), ['+@C+'])))
            )
      where ['+@C+'] like ''%<script src=http://...></script>'''
      );
  FETCH NEXT FROM Table_Cursor INTO @T, @C;
END;
CLOSE Table_Cursor;
DEALLOCATE Table_Cursor;
 
 
위 진하게 표시된 부분을 삽입된 스크립트 내용으로 넣어 주시면 됩니다.
만약 여러 종류의 스크립트가 삽입된경우 ''%<script%</script>''' 처럼 넣어 주셔도 됩니다. 하지만 정상적인 스크립트가 사라지는 경우가 발생하겠죠! 주의!
 
하지만, 안타깝게도 위 쿼리로 100% 복구 안될 가능성 있습니다.
가장 좋은 방법은 백업해두신거 복구하는게 가장 좋겠죠!
 
아무튼 행운을 빌며 해당 공격에 대해 더 자사한 정보 찾으면 올리겠습니다.

MYSQL 한글 첫자음 검색하기

데이타베이스
만약 name 칼럼에 있는 내용의 첫자음을 검색한다면...
꼭~!
binary 타입으로 바꾸어야 한다.

"ㄱ"으로 시작하는 이름을 서치할려면...
Where name>='가' and name<'나'

이렇게 해주면 됩니다. ^^