
MeterSSH는 셸코드를 가져와 메모리에 주입한 다음, 원하는 포트를 SSH를 통해 터널링하여 모든 통신을 일반 SSH 연결로 위장하는 방법입니다. 작동 방식은 셸코드를 메모리에 주입한 후, 셸코드에 의해 생성된 포트(이 경우 meterpreter)를 SSH를 통해 공격자 시스템으로 다시 감싸는 것입니다. 그런 다음 meterpreter의 리스너를 localhost에 연결하면 SSH 프록시를 통해 SSH 터널을 거쳐 피해자와 통신하게 됩니다. 모든 통신은 SSH 터널을 통해 중계되며 네트워크를 통해 직접 이루어지지 않습니다.
도구 이름: MeterSSH
작성자: David Kennedy
회사: TrustedSec
웹사이트: https://www.trustedsec.com
트위터: @TrustedSec, @HackingDave
MeterSSH는 셸코드를 가져와 메모리에 주입한 다음 원하는 포트를 SSH를 통해 터널링하여 모든 통신을 정상적인 SSH 연결로 위장하는 방법입니다. 작동 방식은 셸코드를 메모리에 주입한 후, 셸코드가 생성한 포트(이 경우 meterpreter)를 SSH를 통해 공격자의 머신으로 다시 터널링하는 것입니다. 그런 다음 meterpreter의 리스너를 localhost에 연결하면 SSH 프록시를 통해 SSH 터널을 거쳐 피해자와 통신하게 됩니다. 모든 통신은 SSH 터널을 통해 전달되며 네트워크를 직접 경유하지 않습니다.
버그 신고 또는 개선 요청은 여기 https://github.com/trustedsec/artillery/issues 에서 이슈를 열어주세요.
두 개의 파일이 있습니다: monitor.py와 meterssh.py.
monitor.py - SSH 연결을 수신하기 위해 실행합니다. localhost에서 8021 포트를 폴링하여 SSH 터널을 감지한 후 자동으로 Metasploit을 실행하여 셸을 획득합니다.
meterssh.py - 피해자 머신에 배포할 파일입니다. 대부분의 Windows 머신에는 Python이 설치되어 있지 않으므로 py2exe나 pyinstaller로 Python을 컴파일하는 것이 좋습니다.
meterssh.py 내에서 수정해야 할 필드
user = "sshuser"
# password for SSH
password = "sshpw"
# this is where your SSH server is running
rhost = "192.168.1.1"
# remote SSH port - this is the attackers SSH server
port = "22"
user - 공격자의 SSH 서버 사용자 계정입니다 (root 사용 금지, root 권한 불필요)
password - 공격자의 SSH 서버 비밀번호입니다
rhost - 공격자의 SSH 서버 IP 주소입니다
port - 공격자의 SSH 서버 포트입니다
Metasploit 셸코드를 변경할 필요가 없습니다. Metasploit 셸코드는 단순히 수정되지 않은 windows/meterpreter/bind_tcp이며 포트 8021에 바인딩됩니다. 변경하려면 셸코드를 교체하고 스크립트 내의 포트 8021을 원하는 포트로 변경하면 됩니다. 사용자 정의/수정이 필요하지 않다면 이 작업을 할 필요는 없습니다.
Copyright 2016, TrustedSec, LLC의 MeterSSH
모든 권리 보유.
수정 여부와 관계없이 소스 및 바이너리 형태로 재배포 및 사용이 가능하며, 다음 조건을 충족해야 합니다:
* 소스 코드 재배포 시 위의 저작권 고지, 이 조건 목록 및 다음 면책 조항을 포함해야 합니다.
* 바이너리 형태로 재배포 시 배포에 포함된 문서 및/또는 기타 자료에 위의 저작권 고지, 이 조건 목록 및 다음 면책 조항을 복제해야 합니다.
* MeterSSH의 이름이나 기여자의 이름은 사전 서면 허가 없이 이 소프트웨어에서 파생된 제품을 보증하거나 홍보하는 데 사용할 수 없습니다.
이 소프트웨어는 저작권 보유자 및 기여자에 의해 '있는 그대로' 제공되며, 상품성 및 특정 목적에의 적합성에 대한 묵시적 보증을 포함한 모든 명시적 또는 묵시적 보증은 부인됩니다. 어떠한 경우에도 저작권 소유자나 기여자는 이 소프트웨어의 사용으로 인해 발생하는 직접적, 간접적, 우발적, 특별적, 징벌적 또는 결과적 손해(대체 상품 또는 서비스의 조달, 사용 데이터의 손실, 이익 손실 또는 업무 중단 등)에 대해 책임을 지지 않으며, 이는 계약, 엄격한 책임 또는 불법 행위(과실 포함) 등 어떤 책임 이론에 근거하든 간에 그리고 그러한 손해의 가능성을 사전에 인지한 경우에도 동일합니다.
위 라이선스는 BSD 라이선스에서 가져왔으며 MeterSSH에도 동일하게 적용됩니다.
MeterSSH는 있는 그대로 제공되며, 로열티 없는 오픈소스 애플리케이션입니다.
적절한 저작자 표시를 하는 한(즉, 작성자에게 그들이 소프트웨어를 작성한 공로를 인정하는 것), 수정, 사용, 변경, 판매 등 원하는 대로 자유롭게 사용할 수 있습니다. 또한 이 소프트웨어를 사용함으로써, 만약 술집에서 SET 창시자를 만난다면 그에게 포옹을 하고 맥주를 사줘야 합니다. 포옹은 최소 5초 이상 지속되어야 합니다. 저자는 포옹(거의 발생하지 않을 것임)이나 맥주(마찬가지로 거의 발생하지 않을 것임)를 거절할 권리가 있습니다.