본문으로 건너뛰기
로그인 둘러보기
개발·코딩·데이터베이스 · 윈도우즈 유틸

BlockCheck

0

BlockCheck은 러시아 연방 인터넷 서비스 제공업체가 적용하는 사이트 차단 유형을 분석하는 오픈소스 유틸리티입니다.

DNS 조작DPI 분석네트워크 진단러시아 인터넷 규제오픈소스우회 테스트차단 탐지

소개

BlockCheck은 러시아 연방 인터넷 서비스 제공업체가 적용하는 사이트 차단 유형을 분석하는 오픈소스 유틸리티입니다. ValdikSS가 개발했으며, DNS 조작, DPI 필터링, SSL 인증서 교체 등 다양한 차단 기법을 탐지합니다. 이 도구는 차단 우회 기술의 효과를 테스트하는 데 사용되며, 그래픽 및 콘솔 모드를 지원합니다. 현재 버전은 0.0.9.7이며, MIT 라이선스 하에 배포됩니다.

상세정보

차단 유형 탐지

BlockCheck은 다음 유형의 차단을 식별할 수 있습니다:

  • DNS 응답 조작 (DNS spoofing)
  • 제3자 DNS 서버의 프로바이더 서버로의 리다이렉션
  • 제3자 DNS 서버 차단
  • 차단된 도메인의 전체 존(서브도메인 포함) 차단
  • 일반 DPI (특정 IP 및 포트에서의 URL 필터링)
  • 전면 DPI (모든 IP 및 포트에서의 URL 필터링)
  • SSL/HTTPS 인증서 교체 (HTTPS 트래픽 중간자 공격)
  • IP 주소 기반 차단

DPI 우회 테스트 지원

활성 DPI가 감지된 경우, BlockCheck은 다음과 같은 우회 기법의 효과를 테스트할 수 있습니다:

  • GET 요청 후 추가 공백 삽입
  • GET 요청 전 줄바꿈 삽입
  • HTTP 헤더 분할 (헤더 프래그먼테이션)
  • 도메인 이름 끝에 점 추가
  • 도메인 이름 끝에 탭 문자 추가
  • Host 헤더 대신 소문자 host 사용
  • UNIX 스타일 줄바꿈을 헤더에 사용

다운로드 및 설치 방법

BlockCheck은 설치가 필요 없는 독립 실행형 바이너리를 제공합니다. Windows 사용자는 공식 GitHub 저장소의 Releases 섹션에서 최신 버전의 실행 파일을 다운로드할 수 있습니다. 다운로드 후 압축을 해제하고 실행 파일을 더블클릭하면 바로 사용할 수 있습니다.

소스 코드를 수정하거나 직접 빌드하려는 경우, Python 3.4 이상과 dnspython 모듈이 필요합니다. 다음 단계를 따릅니다:

  1. Python 3을 공식 웹사이트 또는 시스템 저장소에서 설치합니다.
  2. 명령 프롬프트에서 pip install -r requirements.txt을 실행하여 의존성을 설치합니다.
  3. pip install pyinstaller을 실행해 PyInstaller를 설치합니다.
  4. pyinstaller blockcheck.spec을 실행해 실행 파일을 빌드합니다.
  5. 빌드가 완료되면 dist 폴더에서 생성된 실행 파일을 찾을 수 있습니다.

기본 사용법

BlockCheck은 기본적으로 그래픽 사용자 인터페이스(GUI) 모드로 실행됩니다. 시스템에 Tkinter가 설치되어 있다면 자동으로 GUI가 запу됩니다. 콘솔 모드를 선호하는 경우, --console 옵션을 추가해 실행할 수 있습니다.

주요 명령줄 옵션은 다음과 같습니다:

  • --no-report: 테스트 결과를 외부 서버로 전송하지 않습니다. 차단 우회 실험 시 개인정보 보호를 위해 이 옵션을 사용하는 것이 좋습니다.
  • --force-dpi-check: 대상 사이트가 차단되지 않았더라도 DPI 검사를 강제로 수행합니다.
  • --disable-ipv6: IPv6와 관련된 모든 검사를 비활성화합니다.
  • --help: 모든 사용 가능한 옵션 목록을 표시합니다.

예를 들어, 보고서 전송 없이 콘솔 모드로 DPI 검사를 강제 실행하려면 다음 명령을 사용합니다:

blockcheck.exe --console --force-dpi-check --no-report

이런 경우에 유용합니다

이 도구는 러시아에서 인터넷 검열을 연구하는 학자, 기자, 기술 활동가에게 유용합니다. 특히 특정 웹사이트가 차단되었을 때, 그 차단이 DNS 조작인지 DPI인지 IP 기반인지 등을 정확히 진단하여 적절한 우회 전략을 수립하는 데 도움을 줍니다. 또한 네트워크 관리자나 보안 전문가가 자사 네트워크에서의 트래픽 간섭 여부를 점검하는 데도 활용할 수 있습니다.

제한 사항·확인 사항

공식 저장소의 README에 명시된 바와 같이, 현재 버전의 BlockCheck은 작동하지 않습니다 (NOTE: NOT WORKING CURRENTLY. ВНИМАНИЕ: НЕ РАБОТАЕТ НА ТЕКУЩИЙ МОМЕНТ). 이는 대상 사이트의 차단 방식이 변경되었거나 탐지 로직이 더 이상 유효하지 않기 때문입니다. 따라서 실시간 차단 분석을 기대하고 사용할 경우 예상치 못한 결과나 오류가 발생할 수 있습니다.

시스템 요구사항

별도의 시스템 요구사항이 등록되지 않았습니다.