연결 설정 시 Metasploit의 reverse_tcp_dns 미터프리터가 reverse_tcp보다 느립니까?

연결 설정 시 Metasploit의 reverse_tcp_dns 미터프리터가 reverse_tcp보다 느립니까?

나는 DNS가 해결되어야 하는 반면 reverse_tcp는 IP 주소를 사용하기 때문에 그렇다고 가정합니다.

나는 reverse_tcp_dns를 좋아하지만 더 낫다면 여전히 reverse_tcp를 선택할 것이기 때문에 그들 사이의 모든 차이점을 알고 싶습니다.

답변1

네 맞습니다. reverse_tcp_dns는 연결을 설정하는 데 reverse_tcp보다 느립니다. 이 두 페이로드 간의 유일한 차이점은 reverse_tcp_dns가 도메인 이름 확인으로 인해 다시 연결하는 데 추가 시간이 걸리고 reverse_tcp_dns 페이로드가 reverse_tcp 페이로드보다 약 70바이트 크다는 것입니다.

답변2

Metasploit의 reverse_tcp_dns페이로드는 LHOST 값으로 FQDN을 제공하지 않는 한 공격자에게 다시 연결하기 위해 DNS 쿼리를 확인하지 않습니다(IP 주소를 LHOST로 제공할 수도 있음).

대신 피해자 컴퓨터와 공격자 컴퓨터 간의 통신 모드로 DNS 쿼리를 사용합니다. 귀하가 입력한 명령은 meterpreterDNS 레코드 내부로 위장한 피해자 컴퓨터로 전송되고, 응답은 DNS 쿼리로 위장하여 귀하의 컴퓨터로 다시 전송됩니다.

요약하면 데이터 교환은 에서 TCP를 통해 이루어지며 에서는 reverse_tcpDNS+TCP를 통해 이루어집니다 reverse_tcp_dns. 예, TCP 패킷을 통해 데이터를 전송하는 대신 DNS 패킷(이후 TCP 패킷으로 만들어짐) 내부에서 데이터를 전송하는 데 상당한 오버헤드가 있습니다.

관련 정보