php vbs加密还原

js加密还原

原过程


var pwd = theform.PassWord.value;
var rndNum = 394058;
rndNum = rndNum.toString();
var curPos = 0;
var tmpStr,EnCryptStr = "";
for(Cnt=0;Cnt<pwd.length;Cnt++){
    if(Cnt % rndNum.length == 0 ) curPos = 0;
    tmpStr = pwd.substring(Cnt,Cnt+1);
    EnCryptStr += String.fromCharCode(tmpStr.charCodeAt(0) - Cnt - rndNum.substring(curPos,curPos+1));
    curPos +=1;
}
theform.PassWord.value = EnCryptStr;//Assigned the EncryptPassword value to the PassWord TextFiled
theform.EnRndNum.value = rndNum;



用php还原

$pwd = "";
$rndNum = "394058";
$curPos = 0;
$tmpStr = "";
$EnCryptStr = "";
for($Cnt=0;$Cnt&amp;lt;strlen($pwd);$Cnt++)
        {
            if($Cnt % strlen($rndNum) == 0 ) $curPos = 0;
            $tmpStr = substr($pwd,$Cnt,1);
            $EnCryptStr = $EnCryptStr. fromCharCode(charCodeAt($tmpStr) - $Cnt - substr($rndNum,$curPos,1));
                        $curPos +=1; 
        }
echo $EnCryptStr;
echo ''&amp;lt;br&amp;gt;'';
echo $rndNum;
echo ''&amp;lt;br&amp;gt;'';
echo EncryptString($EnCryptStr);

function fromCharCode($codes) {
   if (is_scalar($codes)) $codes= func_get_args();
   $str= '''';
   foreach ($codes as $code) $str.= chr($code);
   return $str;
}

function charCodeAt($word) {
  if (is_array($word))
    $arr = $word;
  else  
    $arr = str_split($word);
  $bin_str = '''';
  foreach ($arr as $value)
    $bin_str .= decbin(ord($value));
  $bin_str = preg_replace(''/^.{4}(.{4}).{2}(.{6}).{2}(.{6})$/'',''$1$2$3'', $bin_str);
  return bindec($bin_str);
}


vbs加密还原

原函数

Function EncryptString(InputText , ThePassword )''用户口令加密 
    Dim il_bit, il_x, il_y, il_z, il_len, i 
    Dim is_out 
    Password = InputText 
    il_len = Len(Password) 
    il_x = 0 
    il_y = 0 
    is_out = "" 

    For i = 1 To il_len 
        il_bit = AscW(Mid(Password, i, 1)) ''W系列支持unicode 
        il_y = (il_bit * 13 Mod 256) + il_x 
        is_out = is_out &amp; ChrW(Fix(il_y)) ''取整 int和fix区别: fix修正负数 
        il_x = il_bit * 13 / 256 
    Next 

    is_out = is_out &amp; ChrW(Fix(il_x)) 
    Password = is_out 
    il_len = Len(Password) 
    il_x = 0 
    il_y = 0 
    is_out = "" 

    For i = 1 To il_len 
        il_bit = AscW(Mid(Password, i, 1)) ''取前4位值 
        il_y = il_bit / 16 + 64 
        is_out = is_out &amp; ChrW(Fix(il_y)) ''取后4位值 
        il_y = (il_bit Mod 16) + 64 
        is_out = is_out &amp; ChrW(Fix(il_y)) 
    Next 

    EncryptString = is_out 
    End Function 
}


用php还原

function EncryptString($Password){      //密码前端加密部分
    $il_len = strlen($Password);
    $il_x = 0;
    $il_y = 0;
    $is_out = "";

    for($i=0;$i< $il_len;$i++){
        $il_bit = ord(substr($Password, $i, 1));
        $il_y = ($il_bit * 13 % 256) + $il_x;
        $is_out = $is_out. Chr(fix($il_y));
        $il_x = $il_bit * 13 / 256;
    }

    $is_out = $is_out. Chr(fix($il_x));
    $Password = $is_out;
    $il_len = strlen($Password);
    $il_x = 0;
    $il_y = 0;
    $is_out = "";

    for($i=0;$i<$il_len;$i++){
        $il_bit = ord(substr($Password, $i, 1));
        $il_y = $il_bit / 16 + 64; 
        $is_out = $is_out. Chr(fix($il_y));
        $il_y = ($il_bit % 16) + 64; 
        $is_out = $is_out. Chr(fix($il_y));

    }

    return $is_out; 
}

function fix($il_y) {
   if(floor($il_y) < 0){
        return floor($il_y)+1;
   }else{
        return floor($il_y);
   }
}
Vbs Unpacker 2.4.5 - by Icy_Ybk (-- 软件介绍 --) Vbs Unpacker 是 Vbs2Exe 的克星,能够将 VBS 文件从 Vbs2Exe 打包好的 EXE 中提取出来。可以理解为对 Vbs2Exe 的逆操作。 Vbs Unpacker 支持大多数文件释放型程序的文件提取,包括但不限于对 Vbs2Exe、Bat2Exe、All2Exe、文件改造者等工具输出的文件进行提取,对于其他同样原理的程序,也可以成功提取目标文件。 同样可以处理利用 WinRAR、好压、快压等压缩软件的自解压功能实现的程序,但会输出一些无关的文件。 使用方法:用户可通过直接将要提取的文件拖到 VbsUnpacker.exe 上,或是运行 VbsUnpacker.exe,然后输入要提取的文件名,最后回车。输出的文件在主程序所在目录中。 请仔细阅读压缩包内 ReadMe.txt 说明文件。 (-- 历代新版更新 --) 解决了 2.0 中 vu 运行太长时间而没有停止的问题 解决了 2.0 中在指定了无效的程序时 vu 没有给出提示的问题 解决了 2.1 中直接将 exe 拖动到 vu 图标上导致 vbs 被释放到一个未知地方的问题 解决了 2.2 中未注册版本释放短于 400 字节的 vbs 时输出包含乱码的问题 添加了错误日志输出,完善了错误处理机制 解决了以前版本中在 64 位中不能通过拖动来指定文件的问题 解决了以前版本中不右键使用管理员权限运行就造成提权失败的问题 技术革新,绕过杀软,提高使用方便性,加快文件处理速度 解决了 2.4.0 中因注入失败导致的原始程序被运行的问题 增加了文件检测,文件可能不可解压时进行提示,避免可能导致的问题(并非完全有效) 优化了文件检测,优化文件识别,优化程序行为,代码执行更高效 完善了异常处理机制,错误信息输出更具针对性 修复错误的文件写操作 修复旧的算法错误 解决了旧版本中普遍存在的代码 NUL 截断问题 解决了旧版本部分输出文件产生的乱码问题(Unicode) 非重复,而是出新版了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值