특정 DNS 요청을 생성하는 앱으로 다시 추적할 수 있는 방법이 있나요?

특정 DNS 요청을 생성하는 앱으로 다시 추적할 수 있는 방법이 있나요?

A내 방화벽은 내 우분투 웹 서버가 맬웨어와 관련이 있을 수 있다고 생각되는 도메인에 기록적인 DNS 요청을 하도록 표시했습니다 ..su

tcpdump도메인 요청이 다시 나타날 때까지 며칠 동안 서버의 포트 53에서 이 작업을 수행했고(다운스트림 방화벽이 실제 URL을 기록하지 않았기 때문에) 이제 실제 도메인이 요청되었습니다 . 확인해 보니 몇 개의 RBL에 있지만 내 서버에서 이러한 특정 DNS 쿼리를 실행하는 항목이 무엇인지 알고 싶습니다.

데스크탑 환경이 아니라 명령줄 Ubuntu Server입니다. ISPConfig주로 기본 웹 서버로 실행되므로 요청은 설치된 모든 항목에서 올 수 있습니다 . 어쩌면 OS나 구성 요소가 소유자의 업데이트 서버에 연결을 시도하고 들어오는 메일 등을 찾으려고 할 수도 있습니다. 그러나 이는 해당 도메인에 대한 요청 NSA기록할 뿐 아무 것도 기록하지 않습니다 MX... TXT정말 짜증나는 일입니다.

도메인을 찾기 위해 Bind를 호출하는 프로세스를 찾는 방법을 아시나요?

답변1

iptables이것은 조잡하지만 패킷을 모니터링하고 lsof쿼리 중인 포트에서 무엇이 사용되고 있는지 찾는 데 사용할 수 있습니다 .

기본적으로 다음과 같습니다.

iptables -I OUTPUT -p UDP --dport 53 -m string --algo bm --string foobar.su -j LOG --log-uid --log-prefix FOOBAR_MATCH

journalctl -t kernel -f | perl -ne '/FOOBAR_MATCH/ && /SPT=(\d+)/ && system("lsof -i udp:$1")'

^ foobar.su보고 있는 내용으로 변경하세요.

시스템에 IPv6가 활성화되어 있으면 iptables명령을 실행하고 다시 실행 해야 합니다 ip6tables.

완료되면 iptables명령을 다시 실행하되 대신 -D규칙 -I을 삭제하십시오.

 

--log-uid규칙 에 대한 것은 선택 사항입니다. 어떤 이유로 프로세스를 캡처할 수 없는 iptables경우에 대비해 포함시켰지만 잠재적으로 유용한 정보를 수집할 수 있습니다.lsof

요청을 삭제하려면 다른 iptables 규칙을 추가해야 할 수도 있습니다. 그렇지 않으면 애플리케이션이 응답을 받고 너무 빨리 사라져서 lsof이를 포착할 수 없습니다.

관련 정보