分享知识的快乐,尊重他人创造的知识 注册 | 登陆
浏览模式: 标准 | 列表2009年07月的文章

最简单的解密

通过SQL注入,你会发现得到的密码形式是

  1. ei5678:;<@
  2. 95;99:=8
  3. gu;7868<;<
  4. 2s5{8k;z
  5. i{678;<>>
  6. ko69;<9?A
  7. {l5<:;??;

如何解密呢?

首先 我把这些数字 转换成 ASCII 十进制的码 得到如下

JavaScript代码
  1. <textarea id='test' cols='110' rows='9'>   
  2. ei5678:;<@   
  3. 95;99:=8   
  4. gu;7868<;<   
  5. 2s5{8k;z   
  6. i{678;<>>   
  7. ko69;<9?A   
  8. {l5<:;??;   
  9. </textarea>   
  10.   
  11.   <script type="text/javascript">   
  12.   <!--   
  13.    test.value=test.value.replace(/(.)/g,function($0,$1){return $1.charCodeAt(0)+'\t'})   
  14.   //-->   
  15.   </script>  
  1. 101 105 53 54 55 56 58 59 60 64
  2. 57 53 59 57 57 58 61 56
  3. 103 117 59 55 56 54 56 60 59 60
  4. 50 115 53 123 56 107 59 122
  5. 105 123 54 55 56 59 60 62 62
  6. 107 111 54 57 59 60 57 63 65
  7. 123 108 53 60 58 59 63 63 59

因为程序总是要循环的。 所以我们要得到规律 就要记得 每个字符所在位置的值。

我们把第一个 和 第二个 的位置都标上。看看

第一组    位置        字母

101         1   =100   d

105         2   =103   g

53           3   =50     2

54           4   =50     2

55           5   =50     2

56           6   =50     2

58           7   =51     3

59           8   =51     3

60           9   =51     3

64         10   =54      6

第二组     位置

57          1   =56      8

53          2   =51      3

59          3   =56      8

57          4   =53      5

57          5   =52      4

58          6   =52      4

61          7   =54      6

56          8   =56      8

 

我们可以先做 相减 得到的ASCII为:

第一组为:dg2223336

第二组为:83854468

我们可以看到 同样的值有3  ASCII为51 ,用减法 看看是不是对的。

我们把这个密码 用后台登陆,发现是对的。

如果发现不对,我们就用 加法 得到的结果再试一下。

» 阅读全文

Tags: 解密

eweb2.8 远程上传漏洞是伪科学

在google 输入:ewebeditor 2.8 0day

会有一些文章,介绍说。 eweb2.8 存在远程上传漏洞。原理如下:

在远程的服务器放置一个 http://www.baidu.com/ys.gif.asp 的文件

然后在eweb编辑器 远程网络路径填写这个地址。然后远程事件执行上传。

我们分析一下如下:

// upload.asp
//  能过action 得到 remote 然后选择 doremote 在这个事件里面就会先用一个函数调用
//If sAllowExt <> "" Then
//  sContent = ReplaceRemoteUrl(sContent, sAllowExt)
// End If

//以下代码是upload.asp 的  ReplaceRemoteUrl函数里面分析的

// upload.asp  303 行
 Set re = new RegExp
 re.IgnoreCase  = True
 re.Global = True
 re.Pattern = "((http|https|ftp|rtsp|mms):(\/\/|\\\\){1}(([A-Za-z0-9_-])+[.]){1,}(net|com|cn|org|cc|tv|[0-9]{1,3})(\S*\/)((\S)+[.]{1}(gif|jpg|jpeg|bmp)))"

 Set RemoteFile = re.Execute(s)
    Dim a_RemoteUrl(1)
 For Each RemoteFileurl in RemoteFile
      a_RemoteUrl(1) = RemoteFileurl
    Next
    alert(a_RemoteUrl(1))
SaveFileType = Mid(a_RemoteUrl(1), InstrRev(a_RemoteUrl(1), ".") + 1)
//我们看到 得到类型是安全的。因为正则你没有办法挑过。
//alert(SaveFileType) 得到类型

 

//为什么返回的文件带有asp 就要看这一行了。 upload.asp 344 -347 行处理的

   s_Content = Replace(s, a_RemoteUrl(1), "uploadfiel/" & "2009238158235.gif", 1, -1, 1)
 //alert(s_Content)
//所以 远程上传漏洞是 伪科学。 该漏洞不存在

  该漏洞不存在

» 阅读全文

Tags: eweb, 业传, 漏洞

模仿是成功的捷径

昨天看《中央10台》 里面说,人与猴的区别 就是会模仿,所以成就了人类文明。

我觉得挺有道理的。

你们自己好好想想,身边的事情和人。

哪个老板不是知道一些东西能挣钱【但不详细】,马上自己搞,一般成功率还是挺高的。

还有,我们平时学PHP,都是看看一些大型程序在某些问题如何处理,也Copy函数和类来应用。。


所以,平时我们如果多模枋几个程序,进步应该不错。

你们知道中国模枋最成功的公司是谁。答案当然是 马化腾的公司

» 阅读全文

getAttribute的参数说明

Optional. Integer that specifies one or more of the following flags:

以上内容来自微软的 getAttribute

  <a Href='/IdeX.html' abc='1' title=function(){} id='test'>a</a>
  <script type="text/javascript">
  <!--
    alert(test.getAttribute('Href',0))//缺省返回路径
    alert(test.getAttribute('aBc',1))//表示属性名的大小写区分.在自定义属性上,大小写不同的属性
    alert(test.getAttribute('href',2))//表示 属性值本身
    alert(test.getAttribute('href',4))// URL属性时,返回全路径
  //-->
  </script>

 

参考文章:http://msdn.microsoft.com/en-us/library/ms536429(VS.85).aspx

参考文章:http://dancewithnet.com/2009/07/27/get-right-url-from-html/

0
Default. Performs a property search that is not case-sensitive, and returns an interpolated value if the property is found.
1
Performs a case-sensitive property search. To find a match, the uppercase and lowercase letters in sAttrName must exactly match those in the attribute name.
2
Returns attribute value as a String. This flag does not work for event properties.
4
Returns attribute value as a fully expanded URL. Only works for URL attributes.

» 阅读全文

Tags: getattribute

python TCL tkinter 学习资料及教程

Tags: python, tcl, tkinter

妙用异或运算2个整数数组的差集

异或=a`b+b`a

true ^true = false

false^false = flase

true^false = true

false^true =true

从这个关系上,我们可以看到 按位异或,同样的整数异或的结果为0。这样我们可以把 N整数和N-1的整数做异或运算,就知道最后一个数,就是2个数组差集。

代码如下:

JavaScript代码
  1. var a=[5,2,3,4,9]   
  2.   var b=[9,2,3,4]   
  3.   c=0   
  4.   for(var i=0;i<a.length;i++){   
  5.   c ^=a[i]   
  6.   }   
  7.   for(var j=0;j<b.length;j++){   
  8.   c ^=b[j]   
  9.   }   
  10.  alert(c)  

参考文章:

异或的妙用

另一个是将PHP的array_diff  for javascript

» 阅读全文

Tags: 异或

SQL注入工具:insert into 过滤单引号的插入方法

XML/HTML代码
  1. <textarea id='test'>  
  2.  INSERT INTO a(b,c,d,e,f)values('a','b','01, 02','2007-12-10','192.168.0.120')</textarea>  
  3.  <textarea id='result' rows='8' cols='50'></textarea>  
  4. button onclick="tranInsertSql(test.value)">Tran</button>  
  5. <script type="text/javascript">  
  6. <!--   
  7.    function tranInsertSql(sql){   
  8.     /*    
  9.        Author:flyfish   
  10.        QQ:628558   
  11.      */   
  12.     var Arrsql = sql.split("values");   
  13.      if(Arrsql.length>0){   
  14.         var values =Arrsql[1].slice(1,-1);             
  15.         var count = values.length;   
  16.         var str='';   
  17.         for(var i=0;i<count;i++){   
  18.          if(values.charAt(i)=="'")continue;   
  19.          if(values.charAt(i-1)+values.charAt(i)=="',"){   
  20.          strstr=str.slice(0,-1)+",";   
  21.          continue;   
  22.          }   
  23.          str+='char(0x'+(values.charCodeAt(i)).toString(16)+')+';   
  24.         }   
  25.         result.value=Arrsql[0]+'values('+str.slice(0,-1)+')';   
  26.      }   
  27.   
  28.    }   
  29. //-->  
  30. </script>  

» 阅读全文

Tags: sql注入, 单引号

PHP安全入门-高级PHP应用程序漏洞审核技术

PHP安全入门-高级PHP应用程序漏洞审核技术

http://www.ph4nt0m.org-a.googlepages.com/PSTZine_0x03_0x06.txt

» 阅读全文

Tags: php, 安全

Records:18123