| |
|
开发:
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 zico2: 1 -> 正文阅读 |
|
[PHP知识库]vulnhub zico2: 1 |
本文攻击路径是:nmap扫描-->访问80端口发现文件包含漏洞-->dirb扫描网站目录-->利用默认密码登录phpLiteAdmin-->利用phpLiteAdmin 1.9.3的漏洞结合文件包含漏洞getshell-->脏牛提权(或者sudo tar提权) 步骤1:用arp-scan确认靶机ip攻击机(kali)输入命令
结合靶机MAC地址,确认靶机ip地址为192.168.101.24 步骤2:nmap扫描攻击机(kali)输入命令
发现开放端口22(ssh)、80(http)、111。按照经验,突破口应该在80端口。 步骤3:浏览器访问80端口,发现文件包含漏洞访问http://192.168.101.24,在页面上点点点。 发现http://192.168.101.24/view.php?page=tools.html有文件包含漏洞 如下所示,可以通过文件包含漏洞查看/etc/passwd的内容(只要能到达根目录,随便多少../都行)
根据这个已知漏洞,之后的思路是上传或者创建一个包含php代码的文件,利用这个漏洞执行php代码,达到getshell的目的。 步骤4:dirb扫描攻击机上执行命令
目录扫描结果如下,http://192.168.101.24/dbadmin/应该有用 步骤5:登录phpLiteAdmin访问这个url,发现一个目录 点test_db.php,来到phpLiteAdmin的登录页面 网上查到默认密码是admin,用这个默认密码登录phpLiteAdmin 步骤6:用phpLiteAdmin 1.9.3的漏洞结合文件包含漏洞getshellgithub上搜索phpLiteAdmin 1.9.3,可以搜到一份图文版的poc,根据这个poc稍微改动一点,结合前面发现的文件包含漏洞,可以实现getshell (1)创建一个新数据库ele.php ?创建成功后可以看到新数据库被保存为文件/usr/databases/ele.php (2) 切换到ele.php数据库并创建新表,表名随便 (3)为新表创建字段和默认值,字段随便,默认值就是getshell的php代码,我这边写的是
(4) 蚁剑连接
?连接成功,getshell 步骤7:反弹shell怎么get呢?我也试过直接在字段默认值中输入开启反弹shell的命令,但是并没有成功。
后来机智的小伙伴说他看到网上很多writeup中字段默认值写的类似下面这样。 思路是把php反弹shell写在文件shell.php(或者其他后缀)中,放在攻击机上;然后攻击机开http服务,用下面这个命令把shell.php下载到靶机的/tmp/shell.php,再用php命令运行/tmp/shell.php。
按照以上思路尝试: 攻击机上准备shell.php文件,文件内容是php反弹shell,内容是在下面这个链接找的 $ip是攻击机的ip,$port是反弹shell的监听端口
攻击机上开http服务(getshell之后先不要关,还有其他文件要下载)
攻击机上开反弹shell监听端口,端口号和shell.php中$port对应
然后在phpLiteAdmin新建的数据库ele.php新建的表shell的字段默认值处填上上述payload
浏览器中用文件包含漏洞访问ele.php
获得反弹shell? 这个shell不是交互式的,反弹shell中输入以下命令获得交互式shell
? 步骤8:提权方式检测先创建个当前用户有权限修改的目录,并进入这个目录
从github上下载提权检测脚本,解压,把linpeas.sh放到攻击机上 GitHub - carlospolop/PEASS-ng: PEASS - Privilege Escalation Awesome Scripts SUITE (with colors) 反弹shell中输入如下命令下载该脚本
此时,linpeas.sh由于没有配置任何用户的执行权限,因此还不能执行,用chmod命令赋予当前用户执行该文件的权限
执行脚本
这个脚本可以输出操作系统的很多信息,以及给出提权的可能路径,比如在这个靶机上跑出了可能可以利用脏牛进行提权的建议。 步骤9:利用脏牛漏洞提权脏牛漏洞影响范围(脏牛提权(cve-2016-5159)_haha1314的博客-CSDN博客_脏牛提权): 内核版本大于2.6.22 (2007年发行,到2016年10月18日修复)? 从exploit-db上搜索dirty下载payload,放到攻击机上,命名为dirty.c,并在反弹shell中输入以下命令下载payload
编译
执行?
根据提示输入提权后用户密码,等待一会儿之后,就生成了有root权限的用户firefart,密码为刚刚设置的密码 用firefart进行ssh登录,可以发现firefort取代了root用户,有root权限 额外步骤:更符合靶机名称的提权方式(sudo tar命令提权)这个靶机名字叫zico,拿到反弹shell之后搜一下靶机上有没有和zico相关的文件或者文件夹
? ?进入/home/zico文件夹
首先发现一个叫to_do.txt的文件,查看这个文件,发现如下内容 ? bootstrap没权限解压,没法看,joomla文件夹中没找到什么有意思的内容,wordpress文件夹的wp-config.php文件中有一个数据库账户zico,密码sWfCsfJSPV9H3AmQzw8。 再看/etc/passwd中有这个用户,或许这个用户名和密码可以用来登录系统 ? 我一开始以为密码是md5处理过的,拿到下面这个网站去试了一下。从下图的结果看,这个可能不是md5。后来又拿去base64解码,也不是base64。 直接用这个用户名和密码试试ssh登录,登录成功了 先查找一下有suid的命令
没找到啥有用的 ? 再查看一下zico可以sudo执行的命令
有tar和zip,这两个命令应该是都可以用来提权的,我这边用tar来试一下 命令行输入
虽然报错了,但是实际上已经提权成功了 附一下找到这个提权命令的链接: ? ? ? |
|
PHP知识库 最新文章 |
Laravel 下实现 Google 2fa 验证 |
UUCTF WP |
DASCTF10月 web |
XAMPP任意命令执行提升权限漏洞(CVE-2020- |
[GYCTF2020]Easyphp |
iwebsec靶场 代码执行关卡通关笔记 |
多个线程同步执行,多个线程依次执行,多个 |
php 没事记录下常用方法 (TP5.1) |
php之jwt |
2021-09-18 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
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年12日历 | -2024/12/27 20:34:33- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |
数据统计 |