两个有意思的视频

作者:Secer 发布时间:March 30, 2013 分类:影音娱乐

卢正雨嘻哈三部曲之绝世神功

 

神视觉!!动作连贯、一气呵成、故事完整!!

作者:Secer 发布时间:March 29, 2013 分类:代码学习

(Salt),在密码学中,是指通过在密码任意固定位置插入特定的字符串,让散列后的结果和使用原始密码的散列结果不相符,这种过程称之为“加盐”。

安全因素

通常情况下,当字段经过散列处理(如MD5),会生成一段散列值,而散列后的值一般是无法通过特定算法得到原始字段的。但是某些情况,比如一个大型的彩虹表,通过在表中搜索该MD5值,很有可能在极短的时间内找到该散列值对应的真实字段内容。

加盐后的散列值,可以极大的降低由于用户数据被盗而带来的密码泄漏风险,即使通过彩虹表寻找到了散列后的数值所对应的原始内容,但是由于经过了加盐,插入的字符串扰乱了真正的密码,使得获得真实密码的概率大大降低。

实现原理

加盐的实现过程通常是在需要散列的字段的特定位置增加特定的字符,打乱原始的字串,使其生成的散列结果产生变化。比如,用户使用了一个密码:

x7faqgjw

经过MD5散列后,可以得出结果:

455e0e5c2bc109deae749e7ce0cdd397

但是由于用户密码位数不足,短密码的散列结果很容易被彩虹表破解,因此,在用户的密码末尾添加特定字串(绿色字体为加盐的字段):

x7faqgjwabcdefghijklmnopqrstuvwxyz

因此,加盐后的密码位数更长了,散列的结果也发生了变化:

4a1690d5eb6c126ef68606dda68c2f79

以上就是加盐过程的简单描述,在实际使用过程中,还需要通过特定位数插入、倒序或多种方法对原始密码进行固定的加盐处理,使得散列的结果更加不容易被破解或轻易得到原始密码,比如(绿色字体为加盐字串):

x7afabqgcjw

代码样本

PHP

//这是一个简单的、在输入内容之後加入“HaCkerIn “并进行散列的PHP代码。

<?php

function hash($a) {

$salt="HaCkerIn"; //定义一个加盐字段(HaCkerIn),一旦设定并使用,将不可更动。

$b=$a.$salt; //把密码和加盐字段连接。

$b=md5($b); //执行MD5散列。

return $b; //返回散列。

}

?>

参考文献

· Essential PHP Security:  98. ISBN 978-0596006563.

.Net Cross Site Scripting - Request Validation Bypassing

作者:Secer 发布时间:March 29, 2013 分类:黑客技巧

原文:http://www.quotium.com/research/advisories/XSS-NetRequestValidation.php
.Net的XSS——绕过.net的请求验证机制

Seeker Research Center
By Zamir Paltiel, August 2012

Overview
中心思想

A vulnerability in the .Net Request Validation mechanism allows bypassing the filter and execution of malicious scripts in the browsers of users via Cross Site Scripting attacks.
绕过.Net中的请求验证机制,然后让普通用户无意去执行这种恶意的XSS

The exploitation technique explained here allows sending tags through the Request Validation Filter in a manner that will pass browser syntax and be rendered by browsers.
这里所介绍的方法就是通过发送tag去绕过请求验证过滤器,最后呈现给用户。

Details
什么原理呢

The .Net Request Validation mechanism prevents attackers from sending tags as the value of the parameters. It is however possible to bypass this mechanism and send arbitrary tags that facilitate script execution.
.Net的请求验证机制会防止用户发送标签比如<script>的参数值,一但发现,会出现错误提示的。但是可以去绕过这个检测机制去发生任意的标签,让script可以顺利地被执行。

This is caused by the fact that although ‹tag› is restricted by the Request Validation filter, ‹%tag› is not restricted but parsed by Internet Explorer browsers as a valid tag.
Exploit
虽然面对着这个东西,但是我们不能一根筋去想怎么去绕过<tag>。我们得换个思路……最后发现.net对于<%tag>是不会去检测的。然而IE又会把这东西当成是有效的标签。去执行它。

An example of the exploitation of this vulnerability would be crafting a link to a page that reflects a parameter value to the user.As the value of the parameter the attacker would provide a ‹%tag› with the style attribute and an expression, for example:
举个例子,怎么样去运用,然后最终呈现出效果。有个param的参数,然后我们把要发送的东西封装成类似于css的XSS。

http://www.vulnerablesite.com/login.aspx?param=‹%tag style="xss:expression(alert(123))" ›

This will bypass the filter and execute the script in the brackets.
这样,就绕过了过滤器,并且alert(123)会被执行。

Affected Systems
哪些中枪了?

This vulnerability has been tested on .Net frameworks 2.0 and above.
.net2.0以上的都中枪。

Vendor Response
于是微软说

"The Request Validation Feature in ASP.NET is designed to perform basic input validation. It is not designed to make security decisions for applications developed using ASP.NET. Only the original developers can determine what content the ASP.NET application is designed to process and handle. Microsoft recommends that all software developers perform input/data validation of all sources. We do this to encourage our customers to make more robust applications that are less susceptible to security issues. The Request Validation Feature was designed and released to help developers in this effort. For more information about our recommendations to software developers, please see the following MSDN article: http://msdn.microsoft.com/en-us/library/ff649487.aspx#pagguidelines0001_inputdatavalidation."

Microsoft therefore will not be releasing a fix for this issue.

这个请求验证本来就帮助做一些检测,不要这么懒去写检测函数啊,虽然我很努力去提高asp.net的安全,但是总是百密一疏嘛,就像啪啪啪 做了安全也是有百分之几会中枪的嘛,你不能中枪去怪TT的厂商啊。多做点安全措施嘛,该结扎的去结扎,该不要就不要啦= =,我微软就不去管这问题了,管这么多,医院肿么活。如果你想有更多的了解的话,可以去看看http://msdn.microsoft.com/en- us/library/ff649487.aspx#pagguidelines0001_inputdatavalidation.
安全还是得自己做,不能靠太多别人去帮你嘛,要时刻提高安全意识啊。千里之堤,溃于蚁穴!

抓取谷歌搜索结果里的支付宝帐号

作者:Secer 发布时间:March 28, 2013 分类:代码学习,原创文章

支付宝转账信息能够被谷歌抓取,大量用户隐私信息被泄露。

clip_image002

练习php写了个提取支付宝帐号的程序

<?php

/* Build:2013-3-28

* Author:Secer

* Encoding:UTF-8

* 

* http://www.googlestable.com/search?q=site:shenghuo.alipay.com+%E8%BD%AC%E8%B4%A6%E7%BB%93%E6%9E%9C&hl=zh-CN&newwindow=1&ei=qJtTUYG1KcaHkwXNooHYBw&start=10&sa=N

* 抓取谷歌采集支付宝

* 

Useage php.exe 9getgoogle.php

*/

header("Content-type: text/html; charset=utf-8");

$filename = 'http://www.googlestable.com/search?num=100&hl=zh-CN&tbo=d&site=&source=hp&q=site%3Ashenghuo.alipay.com+%E8%BD%AC%E8%B4%A6%E7%BB%93%E6%9E%9C&btnG=Google+%E6%90%9C%E7%B4%A2';

// $filename = 'http://www.googlestable.com/search?q=site:shenghuo.alipay.com+%E8%BD%AC%E8%B4%A6%E7%BB%93%E6%9E%9C&num=100&hl=zh-CN&newwindow=1&ei=lrFTUbSBMMfNkQWH0YAI&start=100&sa=N';

// $filename = 'http://www.googlestable.com/search?q=site:shenghuo.alipay.com+%E8%BD%AC%E8%B4%A6%E7%BB%93%E6%9E%9C&num=100&hl=zh-CN&newwindow=1&ei=ybFTUbjRC8fbkAX5joBI&start=200&sa=N';

//将对方的GBK编码转为utf-8后进行匹配

$result = iconv("gbk", "utf-8//IGNORE",$result);

$pat_send = "/付款账户:, ([\w\d\[email protected]]+)\. /";

$pat_recv = "/收款账户:, ([\w\d\[email protected]]+)\. /";



preg_match_all($pat_send,$result,$arr1); 

preg_match_all($pat_recv,$result,$arr2);

for($i=0 ; $i < count($arr1[1]) ;$i++)

{

echo $arr[1][$i];

$fp = fopen("alipay.txt", 'a');

fwrite($fp, $arr1[1][$i]."\r\n");

fclose($fp);

}

for($i=0 ; $i < count($arr2[1]) ;$i++)

{

echo $arr[1][$i];

$fp = fopen("alipay.txt", 'a');

fwrite($fp, $arr2[1][$i]."\r\n");

fclose($fp);

}

?>

 

结果生成到文件alipay.txt。