신비한 중국 트래픽 : HTTP 요청에 사용 된 DNS 서버를 어떻게 알 수 있습니까?


24

지난 주에 저는 광범위한 중국 IP 주소에서 엄청난 양의 트래픽을 받고있었습니다. 이 트래픽은 정상적인 사람에 의한 것으로 보이며 HTTP 요청에 따르면 다음과 같이 생각합니다.

  • 페이스 북
  • 해적 만
  • 다양한 BitTorrent 트래커,
  • 포르노 사이트

사람들이 VPN을 사용하는 것처럼 들립니다. 또는 만리장성을 화나게하는 것들.

사용자 에이전트에는 웹 브라우저, Android, iOS, FBiOSSDK, Bittorrent가 포함됩니다. IP 주소는 일반적인 상용 중국 공급자입니다.

호스트가 잘못되었거나 사용자 에이전트가 분명히 잘못된 경우 Nginx가 444를 반환합니다.

## Deny illegal Host headers
if ($host !~* ^({{ www_domain }})$ ) {
   return 444;
}
## block bad agents
if ($http_user_agent ~* FBiOSSDK|ExchangeWebServices|Bittorrent) {
    return 444;
}

지금은 부하를 처리 할 수 ​​있지만 분당 최대 2k의 버스트가 발생했습니다. 그들이 왜 나에게 와서 멈추는 지 알고 싶습니다. 우리는 또한 합법적 인 CN 트래픽을 가지고 있기 때문에 지구의 1/6을 금지하는 것은 옵션이 아닙니다.

악의적이고 개인 일 수도 있지만, 잘못 구성된 DNS 일 수도 있습니다.

내 이론은 잘못 구성된 DNS 서버 또는 사람들이 Great Fire Wall을 돌아 다니기 위해 사용하는 VPN 서비스 일 수 있다는 것입니다.

주어진 클라이언트 IP 주소 :

183.36.131.137 - - [05/Jan/2015:04:44:12 -0500] "GET /announce?info_hash=%3E%F3%0B%907%7F%9D%E1%C1%CB%BAiF%D8C%DE%27vG%A9&peer_id=%2DSD0100%2D%96%8B%C0%3B%86n%8El%C5L%11%13&ip=183.36.131.137&port=11794&uploaded=4689970239&downloaded=4689970239&left=0&numwant=200&key=9085&compact=1 HTTP/1.0" 444 0 "-" "Bittorrent"

알 수 있습니다 :

descr:          CHINANET Guangdong province network
descr:          Data Communication Division
descr:          China Telecom
  • 해당 고객이 어떤 DNS 서버를 사용하고 있는지 어떻게 알 수 있습니까?
  • 어쨌든 HTTP 요청이 VPN에서 오는지 확인할 수 있습니까?
  • 여기서 무슨 일이 벌어지고 있습니까?

5
트래픽의 대상이자 서버에 대한 트래픽이 다른 곳으로 전송되도록하는 것 모두 이전에이 문제를 본 적이 있습니다. 그래도 대답이 없습니다. 방화벽에서 첫 번째 문제의 영향을 줄이고 두 번째 문제는 특정 상황에서만 가능했던 소프트웨어 솔루션 (우리 소프트웨어가 요청한 것)으로 인한 영향을 줄였습니다. 만족시키는 과정에서 일부 DNS 서버는 매우 낮은 TTL을 존중하지 않고 몇 달 동안 결과를 캐싱하여 트래픽이 발생하는 사이트 목록을 설명 할 수 있음을 발견했습니다.
xofer

1
이 질문도 확인하십시오. 나는 같은 문제가 serverfault.com/questions/656093/을 가지고 있었다.… 왜 ISP가 그런 식으로 행동하는지 궁금하다. 값을 볼 수 없습니다.
Cha0s

4
내 경험상, 이들은 개방형 웹 프록시를 찾으려고 시도합니다. 일부 웹 서버는이 요청 할 수 있는 URL을; 한 번은 그러한 서비스 중 하나를 처리하라는 요청을 받았는데, 서비스를 받기 전에 월간 대역폭 할당을 초과했습니다. 기술의 난징 대학에서 학생들의 무리가 연결 그것에 HTTPS를하고 요청할 수 발견 한 어떤 웹 페이지를, 이렇게 열심히 모두에게 위대한 방화벽 과거 자신의 포르노를 몰래했다. 실제로 요청한 콘텐츠를 제공하지 않는다면 괜찮을 것입니다.
MadHatter는 Monica

1
일반적으로 그렇습니다. 하나의 로그 항목 만 위에 인용되었으므로 언급 할 가치가 있다고 생각했습니다. 완전하고 신중한 답변이 아니며, 하나의 답변으로 제출했습니다!
MadHatter는 Monica

1
1. 미국에서 등록 된 도메인에 대한 sysadmin을 찾으려고 시도한 적이 있습니까? 그렇다면 당신은 그것이 얼마나 어려운지를 알고 있습니다. "Chinanet"에서 올바른 사람과 대화 할 수있을뿐만 아니라 실제로 당신을 도울만큼 충분한 사람을 찾는 것이 불가능하다고 생각합니다.
Michael Martinez

답변:


31

클라이언트의 DNS 확인자를 결정하는 한 가지 이론적 인 방법이 있지만 상당히 발전된 것으로서이를 위해 사용할 수있는 상용 소프트웨어를 모릅니다. nginx와 더불어 신뢰할 수있는 DNS 서버를 실행해야합니다.

HTTP 호스트 헤더가 올바르지 않은 경우 오류 문서를 제공하고 데이터베이스에 로그인하는 모든 요청마다 동적으로 생성 된 고유 한 FQDN에 대한 요청을 포함하십시오. 예.

http://e2665feebe35bc97aff1b329c87b87e7.example.com/img.png

Chinas의 훌륭한 방화벽이 해당 요청을 해결하지 않고 클라이언트가 고유 한 FQDN + URI에서 문서를 요청하는 한, 각 요청은 신뢰할 수있는 DNS (예 : example.com)에 대한 새로운 DNS 조회를 생성합니다. DNS 확인자 이상은이를 동적으로 생성 된 URI와 연관시킵니다.


6
이것은 내가 제안하는 것과 같은 접근법이지만, 작동하려면 다른 수준의 도메인이 필요할 것이라고 생각합니다. 기본 도메인이 example.com인 경우 와 같은 하나의 하위 도메인에 대한 NS 레코드를 만듭니다 ns-detect.example.com. 그런 다음 해당 도메인 이름 아래에 고유 한 이름을 작성하면 전체 도메인은 다음과 같습니다 e2665feebe35bc97aff1b329c87b87e7.ns-detect.example.com.
kasperd

1
흥미로운 접근 방식입니다. 나는 리디렉션이 의도적이라고 생각합니다 (이것을 보는 유일한 사람이 아니기 때문에). 따라서 다양한 중국 DNS 서버가 하위 도메인을 얻기 위해 권위있는 서버를 조회하지 않아도된다고 가정합니다. 그들이하는 것은 말이되지 않습니다.
felix jan

그들이 화이트 리스팅 어프로치를 사용한다면 아마도 당신이 옳을 것입니다. 그들이 블랙리스트에 올랐다면 실제로 무고한 FQDN을 찾지 않아야 할 이유가 없습니다. 물론 이것은 단순히 DNS 응답을 사용하는 것보다 훨씬 더 고급 필터링 기술의 결과 일 수 있습니다.
r_3

1
Kasperd가 자체 NS로 하위 도메인을 만들고 일반 DNS와 로그를 별도로 유지하려는 경우 +1 그리고 정상적인 물건을 망칠 확률이 적습니다. 다른 사람이 DNS에서 조회하지 않은 호스트 이름에 대한 http 요청을 볼 경우 불량 클라이언트가 사용하는 DNS 서버가 DNS 응답을 위조하고 있다는 것을 알 수 있습니다. 어쩌면 중국 관리자가 구성의 IP 주소를 입력 한 것일 수 있습니다.).
Peter Cordes

첫 번째 질문에 가장 정확하게 대답하기 때문에 받아들입니다. 트래픽을 얻는 이유를 실제로 해결하지는 않지만 stackexchange는 모호한 질문을 허용하지 않습니다.
felix jan

5

"차단 된"트래픽을 소수의 가짜 IP로 리디렉션하는 데 사용되는 훌륭한 방화벽을 들었지만 블록이 쉽게 발견되는 원인이되었습니다. 어쨌든 관리자는 임의의 IP로 리디렉션을 시작했습니다. 이로 인해 일부 중국 사용자는 페이스 북이나 VPN 대신 포르노를 보게되었습니다.

귀하의 IP 중 하나가 차단 된 중국 트래픽의 수신자 인 것으로 의심되므로 Facebook IPI 사용자 에이전트가 표시됩니다.

이것은 호스트 헤더 확인이 좋은 것임을 의미합니다. 요즘 대부분의 사용자 에이전트는 SNI를 지원하므로 호스트 헤더가없는 트래픽을 상대적으로 무시할 수 있습니다.

편집 : http://www.infosecurity-magazine.com/news/great-firewall-upgrade-redirects/


4

해당 고객이 어떤 DNS 서버를 사용하고 있는지 어떻게 알 수 있습니까?

Chinanet에 연락하여 문의 하시겠습니까? DNS는 클라이언트 측에서 구성 할 수 있습니다. 대부분의 사람들은 DHCP를 통해 DNS 설정을 얻지 만 OpenDNS와 Google의 DNS 서비스는 변경할 수 없다면 비즈니스 모델이 없을 것입니다.

어쨌든 HTTP 요청이 VPN에서 오는지 확인할 수 있습니까?

실제로 중국의 최종 사용자가 아닌 IP가 VPN의 것임을 제외하고는 아닙니다.

여기서 무슨 일이 벌어지고 있습니까?

내가 말할 수는 없지만, 중국의 위대한 방화벽에는 어떤 종류의 잘못된 구성이 있습니까?

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.