해킹 랩을 만들기 위해 가상 상자를 사용하여 가상 머신을 만들고 누군가가 인터넷에서 해킹을 시도할 수 있도록 하고 싶습니다. (따라서 가상머신이 피해자가 됩니다.) 어떻게 해야 합니까? 내 LAN에 포함된 가상 머신의 모든 장치는 고유한 IP를 공유하는 것 같은데 어떻게 가상 머신을 노출할 수 있나요? 방법이 있나요? 포트 전달을 설정해야 합니까, 아니면 다른 구성을 사용해야 합니까? 이것이 어리석은 질문이라면 사과드립니다. 가능하다면 누군가가 나를 도울 수 있기를 바랍니다. 미리 감사드립니다.
답변1
당신은 무엇을 하려는지 매우 조심해야 합니다. VM을 인터넷에 노출하려면 VM이 네트워크의 다른 장치와 통신할 수 없도록 해야 합니다. 그럼에도 불구하고 공격자는 귀하의 인터넷 연결을 불법 활동에 사용할 수 있습니다. 이를 방지하는 것은 어려울 것이며 네트워킹 기술에 대한 확실한 이해가 필요합니다. 전체적으로 내 조언은: 자신이 하고 있는 일을 완전히 알지 않는 한 하지 말라는 것입니다.
답변2
라우터에는 어떤 종류의 장치가 있습니까? 쉘 액세스 권한이 있습니까?
나는 누군가가 인터넷에서 자신의 상자에 완전히 접근할 수 있도록 도와야 했습니다. 라우터(Tomato 실행)의 웹 UI에서 옵션을 찾을 수 없어 변경 사항을 직접 적용한 다음 변경 사항을 다음 위치에 저장했습니다./etc/iptables. 이러한 변경 사항은 구성이 변경되면 지워지지만 선택한 라우터에 따라 문제가 되지 않을 수도 있습니다.
SNAT 규칙은 패킷이 인터넷을 위해 네트워크를 떠날 때 패킷이 로컬 주소(이 경우 1.1.1.1로 검열됨)에서 오는 것처럼 보이게 합니다. 많은 Linux 라우터 배포판은 기본적으로 찾을 수 있는 MASQUERADE 규칙 대신 SNAT를 사용하여 포트 전달을 구현하는 것을 선호합니다.
iptables -t nat -I POSTROUTING -s 192.168.0.0/24 -o vlan1 -j SNAT --to-source 1.1.1.1
외부에서 누군가가 귀하의 공인 IP로 연결을 시도하면 해당 연결은 로컬 컴퓨터(192.168.0.123)로 전송됩니다. 기계에 도달하기 전에 먼저 FORWARD 체인에 의해 승인되어야 합니다.
iptables -t nat -A PREROUTING -d 1.1.1.1 -j DNAT --to-destination 192.168.0.123
승인되면 로컬 시스템으로 전달됩니다.
iptables -A FORWARD -d 192.168.0.123 -j ACCEPT
허니팟 예의 경우 위에 게시한 것처럼 전역 승인을 원할 수 있지만 사용 사례에서는 다음을 사용하는 대신 알려진 신뢰할 수 있는 IP에 대한 액세스를 제한하고 싶었습니다.
iptables -A FORWARD -d 192.168.0.123 -s 2.2.2.2 -j ACCEPT
모든 사람이 귀하의 위치에 연결하도록 허용하는 경우 일반 컴퓨터와는 완전히 별도의 서브넷/충돌 도메인에 배치하고 설정에서 iptables
해당 도메인에 대한 모든 액세스를 차단하도록 할 것입니다.