DC-1WP

1.明确目标

使用arp-scan找出存活主机,确定目标靶机

 

2.信息收集

  1. 使用nmap进行扫描
    rcpbind是NFS中 用来进行消息通知的服务相关漏洞信息:该漏洞可使攻击者在远程rpcbind绑定主机上分配任意大小的内存(每次攻击最高可达4GB),除非进程崩溃,或者管理员挂起/重启rpcbind服务,否则该内存不会被释放。
  2. 使用dirsearch扫描靶机,没有发现很重要的信息

 

3.漏洞利用

  1. 我们先访问靶机地址

    发现cms为drupal
  2. 打开metasploit寻找对应的攻击模块

     使用第一个试试 use 1  show option 看看需要设置那些东西,设置好后直接run

     

  3. 进入shell页面发现flag1.txt

     

  4. 百度搜索该cms配置文件位置为   /sites/default/settings.php


    不用暴力破解,获得访问权限?数据库账号密码,连接数据库查看账号密码登录后台?先试试!

  5. 使用数据库账号密码连接,发现没有任何回显
     

  6. 使用python获得伪终端  python -c "import pty;pty.spawn('/bin/bash')"

     查看一下数据库,发现dripaldb数据库,打开看一下

  7. 查看有哪些表,发现user表

    查询了一下,这个是hash
    hash算法,散列算法,一种思想,在加密里面的应用(hash算法生成一个密码的签名,知乎后台只保存这个签名值。由于hash算法是不可逆的,那么黑客即便得到这个签名,也丝毫没有用处;而如果你在网站登陆界面上输入你的密码,那么知乎后台就会重新计算一下这个hash值,与网站中储存的原hash值进行比对,如果相同,证明你拥有这个账户的密码,那么就会允许你登陆。)

    既然不可逆,那我就直接修改,现在就遇到一个问题,他是怎么生成的呢?
    查找资料发现是php自带的hash加密,直接找到加密文件

     生成123456的加密值$S$DMSAeUvOgcO3ZIKcyiaa9MTZhSL1IWrpyBckRzKWCkKOSIqMTXsK,然后去替换admin的密码(要注意备份原来的admin账户的初始加密值)

  8. 原密码:$S$DlbDyxizJnxrlvJayotmc/Fjn9CXHdXyo1FHGIZHJdHYmvH0QMHR

  9. 利用update去替换原密码

  10. 登录网站
    这里提到了perms,shadow,find,- exec等关键词

     使用find提权,find flag1.txt  -exec’/bin/bash’ \;
    提权成功后查看shadow文件

     发现flag4用户,也许这里提示是爆破flag4的密码,切换到该用户获取下一个flag,这里貌似不用切换用户,直接进到home目录下就能查看flag4文件

  11. 切换到root目录找到最后一个flag

 4.总结

  1. 使用arp-scan快速发现局域网存活主机
  2. 使用nmap发现靶机版本漏洞等信息
  3. 针对目标靶机使用的cms可以通过搜索引擎获取相关漏洞信息
  4. 使用Msf攻击目标靶机
  5. 使用python -c “import pty;pty.spawn(‘/bin/bash’)” \; 来获取一个有回显的shell
  6. 使用hydra+John密码包对flag4的密码进行爆破 hydra -l flag4 -P ./password.lst ssh://192.168.221.131 -f -vV -o hydraflag4.ssh
    hydra 的参数含义

参数

用途

-l

指定单个用户名,适合在知道用户名爆破用户名密码时使用

-L

指定多个用户名,参数值为存储用户名的文件的路径(建议为绝对路径)

-p

指定单个密码,适合在知道密码爆破用户名时使用

-P

指定多个密码,参数值为存贮密码的文件(通常称为字典)的路径(建议为绝对路径)

-C

当用户名和密码存储到一个文件时使用此参数。注意,文件(字典)存储的格式必须为 "用户名:密码" 的格式。

-M

指定多个攻击目标,此参数为存储攻击目标的文件的路径(建议为绝对路径)。注意:列表文件存储格式必须为 "地址:端口"

-t

指定爆破时的任务数量(可以理解为线程数),默认为16

-s

指定端口,适用于攻击目标端口非默认的情况。例如:http服务使用非80端口

-S

指定爆破时使用 SSL 链接

-R

继续从上一次爆破进度上继续爆破

-v/-V

显示爆破的详细信息

-f

一但爆破成功一个就停止爆破

server

代表要攻击的目标(单个),多个目标时请使用 -M 参数

service

攻击目标的服务类型(可以理解为爆破时使用的协议),例如 http ,在hydra中,不同协议会使用不同的模块来爆破,hydra 的 http-get 和 http-post 模块就用来爆破基于 get 和 post 请求的页面

OPT

爆破模块的额外参数,可以使用 -U 参数来查看模块支持那些参数,例如命令:hydra -U http-get

使用find提权 find 文件(真实存在的) -exec “/bin/sh” \; 示例: find flag1.txt -exec “/bin/sh” \;

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值