중국 인터넷 검열 우회: 검열된 마이크로블로그 수집기를 구축한 방법
게시 됨: 2022-03-11전 세계적으로 알려진 바와 같이 중국 정부는 인터넷에 대한 엄격한 검열을 시행하고 있습니다. 일반적으로 중국의 만리장성으로 알려진 중국 검열 시스템은 공안부가 운영하며 공식 명칭은 황금 방패 프로젝트입니다. 이 시스템은 2003년부터 운영되고 있습니다.
일반적으로 New York Times와 같이 정치적으로 민감한 콘텐츠를 포함하는 국제 뉴스 사이트 또는 Facebook 및 Twitter와 같이 검열 규칙을 준수하지 않는 소셜 미디어 사이트는 일반적으로 차단되어 중국 사용자가 사용할 수 없습니다. 이것은 다양한 정교한 방법을 사용하여 수행됩니다.
중국 뉴스와 소셜 미디어 사이트의 경우 거의 모든 것이 정부의 감시 하에 있습니다. 운영을 허용하기 위해 중국의 ISP 및 인터넷 콘텐츠 제공자는 일반적으로 사용자가 게시한 콘텐츠를 차단 또는 제거하거나 정부에서 불법으로 간주되는 경우 사용자 계정을 직접 삭제하는 자체 콘텐츠 필터링 메커니즘을 가지고 있습니다. 수단. 이러한 회사는 서버에 자체 검열 소프트웨어가 있을 뿐만 아니라 자동 검열 소프트웨어가 관리할 수 없는 검열 작업을 수동으로 처리하는 특수 팀이나 부서가 있습니다. 이 팀은 공안부의 지역 부서와 협력하여 새로운 명령과 정책을 받고 일반적으로 서로 협력합니다.
국내 웹 개발자의 경우 중국 인터넷 검열은 우리의 언론의 자유는 물론 전 세계의 귀중한 전문 자원을 걸러냅니다. 일상 업무에서 Gmail, Dropbox 및 기타 여러 중요한 사이트를 사용하려면 VPN을 통해 연결하기 위해 인터넷 검열을 우회해야 합니다. 2010년에 구글이 검열 규칙 준수를 계속 거부한 후 중국에서 구글 서비스가 불안정하거나 액세스할 수 없게 되었을 때 얼마나 어색했는지 아직도 기억합니다. 이것은 다른 나라의 개발자들에게는 믿을 수 없을 것입니다.
시나 웨이보 검열
Sina Weibo는 중국 최대의 마이크로블로깅 소셜 네트워크 사이트입니다. Twitter는 중국의 규칙을 준수하지 않기 때문에 Weibo는 사용자를 두고 경쟁할 필요가 없습니다. 뉴스는 중국의 다른 어떤 언론 매체보다 Weibo에서 더 빠르고 직접적으로 퍼집니다. 저와 같은 젊은 세대의 구성원은 뉴스를 공유하고 공개 행사에 대해 토론하는 데 사용하는 것을 좋아합니다. 하지만 물론 중국 인터넷 검열에 따라 핫하거나 흥미로운 글은 게시 직후 삭제되는 경우가 많다. 정치 및 공개 이벤트 게시물은 삭제될 가능성이 가장 높은 반면 연예 뉴스는 삭제될 가능성이 가장 낮습니다. 컴퓨터 과학자 Jed Crandall과 Dan Wallach의 2013년 연구에 따르면 중국 마이크로블로그의 약 12%가 매일 삭제되고 있습니다.
6월 4일과 같이 정치적으로 민감한 날에는 삭제되는 검열된 Microblog 게시물의 수가 더 많을 것으로 예상됩니다. 요즘 사용자들은 일반적으로 마이크로 블로그를 작성하려고 할 때 특정 민감한 단어를 입력조차 할 수 없습니다.
게시물이 검열되면 어떻게 보입니까? 사이트에서 새 마이크로블로그를 새로 고치면 다음과 같은 내용이 자주 표시됩니다.
이는 원래 메시지가 일반적으로 회색 상자에 표시되는 리트윗과 동일합니다. 이제 상자에 "죄송합니다. 마이크로블로그가 삭제되었습니다. 봐주세요...” 원본 게시물은 2013년 11세 딸의 납치, 강간, 강제 매춘에 대한 한 어머니의 정의를 위한 탄원이었다.
2013년은 마이크로블로그 플랫폼을 통해 많은 정치적 스캔들이 드러난 한 해였습니다. 이 시기에 시나 웨이보의 인기는 치솟았다. 이에 대해 정부는 불안해하며 소셜미디어 플랫폼에 대한 검열을 강화하기 시작했다.
마이크로블로그 이전에는 정치에 관심이 많은 저와 같은 젊은이들이 국제 웹사이트에서 민감한 뉴스를 찾기 위해 프록시 서버나 터널링 서비스를 사용해야 했습니다. 갑자기 우리는 비교적 개방적인 중국 소셜 네트워크 플랫폼을 갖게 되었습니다. 그러나 정부가 재빨리 나섰고, 이는 단지 플래시에 불과한 것으로 판명됐다. 이것은 나를 정말로 화나게 했다. 나는 친구들과 이야기를 나눴고 우리는 플랫폼에서 검열이 강화되는 것에 대해 모두 화를 냈습니다. 내 친구들은 "왜 우리는 이것에 대해 아무 것도 할 수 없습니까?"라고 물을 것입니다. 나는 시도하기로 결정했다. 그래서 Sina Weibo에서 정확히 무엇이 차단되거나 삭제되었는지 확인하기 위해 인터넷 검열을 우회하기 시작하는 웹사이트를 만들었습니다.
기술 토론
기본적으로 차단되거나 삭제된 중국 마이크로블로그를 지속적으로 검색하여 새 웹사이트에 보여주는 서버를 설정해야 했습니다. 알리윤과 같은 국내 클라우드 서비스를 이용할 계획이었으나 도메인 리다이렉트 등 플랫폼에 제약이 많고 가격도 다른 클라우드 서비스에 비해 저렴하지 않은 것으로 나타났다. 물론 국내에 배포하면 서버 자체가 감시를 받게 될까봐 걱정이 더 컸습니다. 그래서 결국 Linode에서 서버를 구입하고 일본에서 서버를 찾았습니다. 또한 Sina Weibo의 검열을 우회하기 위해 freeweibo.me 도메인을 구입했습니다.
다음 그래프는 시스템의 전체 아키텍처인 MongoDB, 웹 서버 및 크롤러를 보여줍니다. 개발 환경으로 Node.js를 선택했습니다. 네트워크 애플리케이션에 더 효율적이고 확장 가능하며 개인적으로 더 많은 경험이 있기 때문입니다. 웹 서버는 Express.js 프레임워크를 사용하여 개발되었으며 Weibo API를 사용하여 데이터를 캡처했습니다. 처음에는 크롤러가 별도의 프로세스로 설계되었지만 나중에 웹 서버 프로세스에서 모듈로 번들링하는 것만으로도 초기 단계에서는 충분하다는 것을 알게 되었습니다.
마이크로블로그의 콘텐츠에는 두 가지 주요 관심 부분이 있습니다. 하나는 텍스트 데이터와 관련 속성입니다. 다른 하나는 게시물과 관련된 이미지입니다. 게시물을 저장하기 위해 이미지도 다운로드하여 디스크에 파일로 저장하려고 합니다. 차단되거나 삭제된 블로그의 경우 이러한 이미지가 매우 중요합니다. 중국에서는 텍스트 콘텐츠를 게시하기 위해 이미지를 사용하는 것이 매우 일반적이고 인기가 있습니다. 이 콘텐츠는 인터넷 회사 서버에서 자동화된 텍스트 기반 필터링 및 검열로 포착하기가 훨씬 더 어렵기 때문입니다.

차단되거나 삭제된 게시물을 감지하는 기본 아이디어는 알려진 사용자 목록에서 새 게시물을 지속적으로 검색한 다음 나중에 게시물의 가용성을 다시 확인하는 것입니다. 마이크로블로그는 몇 분 또는 며칠 내에 삭제되거나 차단될 수 있습니다. 따라서 크롤러는 새로 게시된 콘텐츠를 가져오는 가져오기 작업과 이전에 게시된 콘텐츠가 검열되었는지 확인하는 확인 작업의 두 가지 주요 작업으로 구성됩니다.
처음에는 Weibo에서 잘 알려진 상위 100명의 마이크로블로그를 크롤링하도록 크롤러를 구성했습니다. 그러나 매일 검색되는 삭제된 블로그는 거의 없는 것으로 나타났습니다. 그 이유는 대부분의 상위 사용자가 정치적이거나 공개적으로 민감한 주제에 관심이 없기 때문입니다. 그들은 이러한 종류의 마이크로 블로그를 게시하거나 전달하지 않습니다. 예를 들어, 천만 명 이상의 팔로워를 보유한 여배우인 이 블로거는 가장 인기 있는 사용자 중 하나이지만 민감한 블로그는 절대 게시하지 않습니다.
약간의 실험과 생각 끝에 나는 지속적으로 검열되는 사용자를 적응적으로 찾는 기술을 생각해 냈습니다. 소셜 미디어 네트워크는 주제가 연결되어 있으며 사용자는 관심사별로 그룹으로 모이는 경향이 있습니다. 사용자가 공개 또는 정치적 주제에 관심이 있는 경우 다른 유사한 사용자의 블로그를 게시하거나 전달할 가능성이 더 큽니다. 이러한 전달된 게시물은 스캔할 새 사용자를 식별하는 좋은 방법을 제공합니다.
예를 들어 사용자 A가 이미 데이터베이스에 있고 크롤러가 사용자 A가 다시 게시한 블로그 하나가 삭제되었음을 감지했다고 가정합니다. 블로그의 원래 작성자인 사용자 B가 데이터베이스에 없으면 크롤러는 사용자 B를 저장합니다. 다음에 크롤러가 새 블로그를 다시 검색할 때 사용자 B의 새 블로그도 검색합니다. 따라서 스캔 가능한 사용자는 이러한 종류의 사회적 관심 연결을 활용하여 자동으로 성장합니다.
이 방법론을 활용하도록 크롤러 알고리즘을 조정한 후 민감한 블로그를 게시하는 데 큰 관심을 가진 몇 명의 주요 사용자만 시드하면 크롤러가 자동으로 스캔할 새 사용자를 발견했습니다. 검열된 일일 총 블로그 수는 나날이 꾸준히 증가했습니다. 다음은 내 편지함에 보관된 삭제된 블로그의 스냅샷입니다.
- 마오쩌둥(毛澤東)이 청두(成都)의 고대 성벽을 허물지 않은 지역 관리를 질책하는 역사적 대화.
- 현재 활동 중인 권리 변호사 Xu Zhiyong에 대한 게시물입니다. 그는 많은 소외된 사람들을 돕고 중국에서 새 시민 운동을 시작했습니다. 그는 2014년 1월 징역형을 선고받았다.
- 정부 일간지 인민일보 비판
- 중국의 억만장자이자 신시민운동의 지도자인 왕궁취안의 체포와 재판에 대해 논평하십시오.
- 사회 운동에 참여하는 활동가의 체포에 대한 언급.
결과
2주 동안 중국 마이크로블로그 우회 시스템을 코딩하고 디버깅한 후 freeweibo.me 에 사이트를 배포했습니다. 그러나 몇 주 동안 실행한 후 서버는 더 이상 새 블로그를 감지하지 못했습니다. 몇 가지 조사를 통해 두 가지 문제를 발견했습니다. 하나는 Weibo 플랫폼이 원래 API 인터페이스를 변경했다는 것입니다. 다른 하나는 데이터베이스의 블로그와 사용자의 증가로 인해 크롤러의 API 요청이 속도 제한(분당 1000개)을 초과했다는 것입니다. 그래서 새로운 인터페이스를 채택하고 분당 API 요청 수를 줄이도록 코드를 조정했습니다. 크롤러는 그때부터 안정적이었습니다.
많은 사람들에게 이 사이트를 알려야 할지 말아야 할지 고민이 되었습니다. 사이트를 방문하는 사람이 많을수록 정부에서 더 빨리 스니핑되어 차단된다는 것을 알고 있었습니다. 그래서 몇몇 친구들과만 사이트를 공유했습니다. 처음에는 하루에 10~20명 정도만 방문했습니다. 하지만 한 달 후 어떤 날은 방문수가 80명을 넘었고 이메일 구독자도 수십 명에 이르렀습니다.
그리고 예상대로 아침이 되자 중국에서 내 사이트가 차단된 것을 발견했습니다. 그것은 약 3 개월 동안 지속되었습니다. 이후 사이트에 접속하기 위해서는 VPN 터널링 서비스를 이용해 사이트를 방문해야 했다. 이것은 대부분의 중국 인터넷 사용자에게 비현실적입니다.
그러나 그날 나는 다른 사이트인 freeweibo.com이 내가 만든 것보다 정확히 동일한 서비스를 제공하고 있고 더 정교하다는 것을 알게 되어 안심하고 기뻤습니다. freeweibo.com 프로젝트는 매우 자원이 풍부합니다. 소셜 미디어에서 활성화되며 RSS 피드, 이메일 구독 및 국내 사용자를 위한 미러 사이트와 같은 콘텐츠에 액세스할 수 있는 다양한 수단을 제공합니다. 모바일 앱도 있습니다! 누가 사이트를 만들었는지 모르지만 같은 비전을 공유하게 되어 기쁩니다.
결론
상황에 비추어 볼 때 내 사이트는 더 이상 유용하지 않은 것이 분명했고 몇 달 후에 폐쇄했습니다.
결과에도 불구하고 프로젝트가 헛되지 않았다고 생각하지 않습니다. 오히려 몇 달밖에 살아남지 못했지만 놀라운 경험이었습니다. 우리나라의 현실을 깊이 인식하는 데 도움이 되었습니다.
중국에서 인터넷 사업을 하려면 검열에 매우 조심해야 합니다. 그렇지 않으면 조만간 곤경에 빠질 것입니다. 소셜 미디어 사이트가 엄격한 검열을 준수하지 않고 사용자의 개인 정보를 침해하지 않는다면 성공할 수 있는 방법이 거의 없습니다.
업데이트
freeweibo.me 소스 코드는 이제 여기 GitHub에서 사용할 수 있습니다. 위에서 언급했듯이 이 소스 코드는 유사한 웹사이트 인 freeweibo.com 과 관련이 없습니다.