暴力破解一般有两种应用场景:
暴力破解应用范围非常广,可以说只要需要登录的入口均可以采用暴力破解进行攻击。应用层面如:网页、邮件、FTP服务、Telnet服务等,协议层面如:HTTP、HTTPS、POP3、POP3S、IMAP、IMAPS、SMTP、SMTPS、FTP、TELNET、RDP、QQ、MSN等等。本文仅列举部分常见协议,其它协议情况类似。
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🚀 漏洞小结🚀
1.影响范围个人评价为“高”,Discuz! X系列cms在国内使用范围极广,几乎所有中小型论坛都是用它搭建的。
🥳 🥳 🥳 🥳 🥳 🥳 🥳 🥳
2.危害性个人评价为“高”,这个漏洞不只是单纯的后台代码执行,在uc_app key泄露的情况下也是可以利用的,很多转账对于uc_app key重视程度不是很大,所以相对来说危害性还是非常高的。
方法参数中的
但是这里有两个关键词让我眼前一亮“
💎 💎 💎 💎 💎 💎 💎 💎 💎
1.影响范围个人评价为“高”,Discuz! X系列cms在国内使用范围极广,几乎所有中小型论坛都是用它搭建的。
2.危害性个人评价为“高”,这个漏洞不只是单纯的后台代码执行,在uc_app key泄露的情况下也是可以利用的,很多转账对于uc_app key重视程度不是很大,所以相对来说危害性还是非常高的。
$cachefile = DISCUZ_ROOT.'./uc_client/data/cache/badwords.php';
$fp = fopen($cachefile, 'w');
$s = "<?php\r\n";
$s .= '$_CACHE[\'badwords\'] = '.var_export($data, TRUE).";\r\n";
fwrite($fp, $s);
fclose($fp);
return API_RETURN_SUCCEED;
}
方法参数中的
$get和$post就是用户所传入的内容,从上面代码我们可以看出在解析$post内容之后,将其写入到名为badwords的缓存中。这里代码使用了var_export来避免用户传递单引号来封闭之前语句,注入php代码。但是这里有两个关键词让我眼前一亮“
findpattern”和“replacement”,也就是说这个缓存内容是会被作为执行的。那么如果我向findpattern中传入带有e参数的正则表达式,不就可以实现任意代码执行了吗?Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🎉🎉🎉🎉🎉🎉🎉🎉🎉
🆒Hacking Team是一家在意大利米兰注册的软件公司,主要向各国政府及法律机构销售入侵及监视功能的软件。其远程控制系统可以监测互联网用户的通讯、解密用户的加密 文件及电子邮件,记录Skype及其它VoIP通信,也可以远程激活用户的麦克风及摄像头。其总部在意大利,雇员40多人,并在安纳波利斯和新加坡拥有分支机构其产品在几十个国家使用。💰
🪩🪩🪩🪩🪩🪩🪩🪩🪩
🔥7月5日晚,Hacking Team服务器被攻击,其掌握的400GB数据泄露出来,由此引发的动荡,引起了业界一片哗然,里面有Flash 0day, Windows字体0day, iOS enterprise backdoor app, Android selinux exploit, WP8 trojan等等核武级的漏洞和工具,其远程控制系统可以突破系统默认以及杀毒软件的安全防护,后台监控用户的网络通讯、解密用户的加密文件及电子邮件,记录Skype和其它VoIP工具的聊天内容,以及远程激活用户的麦克风及摄像头。🔥
🎉🎉🎉🎉🎉🎉🎉🎉🎉
🤘本文为Hacking Team泄露的400GB数据当中,查到韩国和哈萨克斯坦曾跟Hacking Team合作利用其开发漏洞利用工具发起针对中国攻击的证据。🤘
🥳 🥳 🥳 🥳 🥳 🥳 🥳 🥳 🥳 🥳
🆒Hacking Team是一家在意大利米兰注册的软件公司,主要向各国政府及法律机构销售入侵及监视功能的软件。其远程控制系统可以监测互联网用户的通讯、解密用户的加密 文件及电子邮件,记录Skype及其它VoIP通信,也可以远程激活用户的麦克风及摄像头。其总部在意大利,雇员40多人,并在安纳波利斯和新加坡拥有分支机构其产品在几十个国家使用。💰
🪩🪩🪩🪩🪩🪩🪩🪩🪩
🔥7月5日晚,Hacking Team服务器被攻击,其掌握的400GB数据泄露出来,由此引发的动荡,引起了业界一片哗然,里面有Flash 0day, Windows字体0day, iOS enterprise backdoor app, Android selinux exploit, WP8 trojan等等核武级的漏洞和工具,其远程控制系统可以突破系统默认以及杀毒软件的安全防护,后台监控用户的网络通讯、解密用户的加密文件及电子邮件,记录Skype和其它VoIP工具的聊天内容,以及远程激活用户的麦克风及摄像头。🔥
🎉🎉🎉🎉🎉🎉🎉🎉🎉
🤘本文为Hacking Team泄露的400GB数据当中,查到韩国和哈萨克斯坦曾跟Hacking Team合作利用其开发漏洞利用工具发起针对中国攻击的证据。🤘
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
IOS APP本地文件安全;HTTP/HTTPS下通信数据安全性的思考;非安全从业者是中间人攻击的重灾区。这次我们将简单的介绍一些方法和工具,来作为IOS APP安全测试的入门教程。由于本人能力有限,文章难免会有些错误,还望小伙伴们见谅。
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
PS.之前一直想把零零碎碎的知识整理下来,作为知识沉淀下来,正好借着wooyun峰会的机会将之前的流程又梳理了一遍,于是就有了下文。也希望整理的内容能给甲方工作者或则白帽子带来一些收获
随着网络安全越来越受到重视,发展越来越快。随之也出现了越来越多的安全防护的软件。例如有:
1.云waf;[阿里云盾,百度云加速,360网站卫士,加速乐等]
2.传统安全厂商的硬件waf以及一直存在的ips,ids设备;[绿盟,启明,深信服,安恒等]
3.主机防护软件如安全狗,云锁;
4.软waf如modsecurity,nginx-lua-waf等
1)一个完整的过程,首先会请求DNS,由于配置云waf的时候,会修改DNS的解析。我们发送DNS请求之后,域名会被解析到云WAF的ip上去。DNS解析完成之后,获取到域名信息,然后进入下一个步骤。
2)HTTP协议是应用层协议,且是tcp协议,因此会首先去做TCP的三次握手,此处不去抠三次握手的细节,假设三次握手建立完毕。
3)发送HTTP请求过去,请求会依次经过云WAF,硬件IPS/IDS设备,硬件WAF设备,服务器,web服务器,主机防护软件/软WAF,WEB程序,数据库。 云WAF,硬件IPS/IDS,硬件WAF均有自己处理数据的方式。云WAF与硬件WAF细节上不太清楚,对于硬件IPS有一定的了解。
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
逆向基础 OS-specific
🤘 🤘 🤘 🤘 🤘 🤘
💎 TLS是每个线程特有的数据区域,每个线程可以把自己需要的数据存储在这里。一个著名的例子是C标准的全局变量errno。多个线程可以同时使用errno获取返回的错误码,如果是全局变量它是无法在多线程环境下正常工作的。因此errno必须保存在TLS。
C++11标准里面新添加了一个thread_local修饰符,标明每个线程都属于自己版本的变量。它可以被初始化并位于TLS中。💎
🆒 🆒 🆒 🆒 🆒 🆒 🆒 🆒
rand_state现在处于TLS段,而且这个变量每个线程都拥有属于自己版本。它是这么访问的:从FS:2Ch加载TIB(Thread Information Block)的地址,然后添加一个额外的索引(如果需要的话),接着计算出在TLS段的地址。
最后可以通过ECX寄存器来访问rand_state变量,它指向每个线程特定的数据区域。
FS:这是每个逆向工程师都很熟悉的选择子了。它专门用于指向TIB,因此访问线程特定数据可以很快完成。
GS: 该选择子用于Win64,0x58的地址是TLS。
Listing 65.3: Optimizing MSVC 2013 x64
💎 💎 💎 💎 💎 💎 💎 💎 💎
C++11标准里面新添加了一个thread_local修饰符,标明每个线程都属于自己版本的变量。它可以被初始化并位于TLS中。
rand_state现在处于TLS段,而且这个变量每个线程都拥有属于自己版本。它是这么访问的:从FS:2Ch加载TIB(Thread Information Block)的地址,然后添加一个额外的索引(如果需要的话),接着计算出在TLS段的地址。
最后可以通过ECX寄存器来访问rand_state变量,它指向每个线程特定的数据区域。
FS:这是每个逆向工程师都很熟悉的选择子了。它专门用于指向TIB,因此访问线程特定数据可以很快完成。
GS: 该选择子用于Win64,0x58的地址是TLS。
Listing 65.3: Optimizing MSVC 2013 x64
_TLS SEGMENT
rand_state DD 01H DUP (?)
_TLS ENDS
_DATA SEGMENT
$SG85451 DB '%d', 0aH, 00H
_DATA ENDS
_TEXT SEGMENT
init$ = 8
my_srand PROC
mov edx, DWORD PTR _tls_index
mov rax, QWORD PTR gs:88 ; 58h
mov r8d, OFFSET FLAT:rand_state
mov rax, QWORD PTR [rax+rdx*8]
mov DWORD PTR [r8+rax], ecx
ret 0
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
模板引擎(这里特指用于Web开发的模板引擎)是为了使用户界面与业务数据(内容)分离而产生的,它可以生成特定格式的文档,用于网站的模板引擎就会生成一个标准的HTML文档。(百度百科) 说白了,就是使得后端数据转换成前端html以及样式的中间应用件。
当今web应用频繁地使用模板系统,诸如Twig,FreeMarket等。当用户输入嵌入在一个很没有安全性的模板时,模板注射就可能发生。
现在我们假设调用了Twig框架用来显示欢迎页面,如果直接把名字传递给模板,不会出现错误 就像这样
$output = $twig->render("Dear {first_name},", array("first_name" => $user.first_name) );Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🎉🎉这个漏洞已经出来很久了,以前简单分析过,但是由于时间关系,没能深入研究原理,网上对这个漏洞的分析也不太多,最近由于工作原因,深入分析了一下这个漏洞的原理,这里重点将漏洞调试过程,以及一些之前遇到的一些奇怪问题的原因记录下来。
👀👀👀👀👀👀👀
🔥🔥可以看到,这个漏洞的形成,是因为在早于JSP2.0的版本上,由于没有EL表达式的支持,Spring标签为了兼容这部分版本,Spring的一部分标签独立于Servlet/JSP容器添加了对EL表达式的支持。但这样做引起了一个问题,就是当这部分标签在支持EL表达式的容器中运行的时候,Spring标签的属性会被当做EL表达式执行两次,第一次是被容器当做EL执行,第二次是被Spring标签自身执行。所以,如果攻击者可以控制标签属性的内容,就可以执行自己提交的EL表达式,会造成信息泄露、代码执行等风险。
首先编写一段测试JSP代码,并且引入存在漏洞的Spring标签,我这里使用的是Tomcat 7.0.57和Spring 3.0.5
👀👀👀👀👀👀👀
🔥🔥可以看到,这个漏洞的形成,是因为在早于JSP2.0的版本上,由于没有EL表达式的支持,Spring标签为了兼容这部分版本,Spring的一部分标签独立于Servlet/JSP容器添加了对EL表达式的支持。但这样做引起了一个问题,就是当这部分标签在支持EL表达式的容器中运行的时候,Spring标签的属性会被当做EL表达式执行两次,第一次是被容器当做EL执行,第二次是被Spring标签自身执行。所以,如果攻击者可以控制标签属性的内容,就可以执行自己提交的EL表达式,会造成信息泄露、代码执行等风险。
首先编写一段测试JSP代码,并且引入存在漏洞的Spring标签,我这里使用的是Tomcat 7.0.57和Spring 3.0.5
<%@ taglib uri="http://www.springframework.org/tags" prefix="spring"%>
<spring:message text="${param.a}"></spring:message>
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM