
대중을 위한 암호화된 익스플로잇 전달
이 프로젝트는 브라우저 익스플로잇을 암호화된 방식으로 피해자 브라우저에 전달하는 것을 목표로 합니다. 키 합의에는 타원 곡선 디피-헬만(secp256k1)이 사용되고 암호화에는 AES가 사용됩니다.
익스플로잇 코드(및 셸코드)를 암호화된 방식으로 피해자에게 전달함으로써 공격이 재생될 수 없습니다. 또한 HTML/JS 소스가 암호화되어 익스플로잇의 리버스 엔지니어링이 훨씬 더 어려워집니다.
제가 무슨 말을 하는지 모르겠다면, Google에서 "How to hide your browser 0-days"를 검색하고 제 프레젠테이션을 확인해 보세요. 또는 YouTube에서 확인하세요: https://www.youtube.com/watch?v=eyMDd98uljI 또는 Slideshare의 슬라이드: https://www.slideshare.net/bz98/how-to-hide-your-browser-0days
암호화된 익스플로잇 전달 아이디어는 제가 2015년 6월 2일에 처음 발표했습니다: https://twitter.com/zh4ck/status/605754804472823808 https://www.mrg-effitas.com/research/generic-bypass-of-next-gen-intrusion-threat-breach-detection-systems/
Angler 익스플로잇 킷 개발자들이 제 아이디어를 그냥 도용했습니다. 그리고 제대로 구현하지도 못했습니다.

이 지침은 개발 및 테스트 목적으로 로컬 머신에서 프로젝트를 실행할 수 있는 복사본을 얻는 방법을 안내합니다.
필수 종속성 - IRONSQUIRREL 프로젝트를 클론하고, 프로젝트 디렉토리로 이동한 후 다음 명령을 실행하세요:
sudo apt-get install ruby-dev
bundle install
실제로 nokogiri와 gibberish gem이 설치됩니다.
선택적 종속성 (Powershell 기반 환경 인식 암호화 페이로드 전달용): Ebowla https://github.com/Genetic-Malware/Ebowla
ruby IRONSQUIRREL.rb --exploit full_path_to_exploit
ruby IRONSQUIRREL.rb --exploit /home/myawesomeusername/IRONSQUIRREL/exploits/alert.html
그 후 브라우저에서 웹 서버에 접속합니다. 예제 출력:
Listening on 2345
GET / HTTP/1.1
GET /sjcl.js HTTP/1.1
GET /dh.js HTTP/1.1
GET /client_pub.html?cl=SOifQJetphU2CvFzZl239nKPYWRGEH23ermGMszo9oqOgqIsH5XxXi1vw4P4YFWDqK6v4o4jIpAVSNZD1x5NTw%3D%3D HTTP/1.1
GET /final.html HTTP/1.1
GET /sjcl.js HTTP/1.1
The end
버그 수정, 기능 요청, 의견 등을 자유롭게 제출해 주세요...
이 프로젝트는 GPL3 라이선스에 따라 라이선스가 부여됩니다 - 자세한 내용은 LICENSE.md 파일을 참조하세요.
