博客已经成功切换为 Wordpress! My blog has been switched to Wordpress!

[转载自52pojie] [Autoit]某呼死你破解分析 – by 无痕

技术分享 edwardfang 3年前 (2015-06-25) 435次浏览 5个评论

首先祝大家端午节快乐,很久没有出教程了,今天给大家分享一个 AutoIt3 的破解教程,一个网络呼死你程序,说实话,这是我见过的最给力的呼死你,没有之一,接下来是破解过程及呼死你实现分析。
   在此之前,从没有接触过 AutoIt 的程序,借助万能的度娘,在百度百科找到如下原话:
   AutoIt 目前最新是 v3 版本,这是一个使用类似 BASIC 脚本语言的免费软件,它设计用于 Windows GUI(图形用户界面)中进行自动化操作。
一、软件初窥
软件主要限制:未购买,只能呼叫 20 次。显号各种模式都有不同程度的限制。
01.JPG
02.JPG
二、语言分析及反编译处理
查壳,显示 Autoitv3.3 ,加了 UPX 区段。
20.JPG
由于以前从不知道有 Autoit 这号东东,以为是个 UPX 什么的东西,二话不说,丢 OD,ESP 定律,脱壳。
19.JPG
提示,无法打开脚本文件,无解,百度之。细细查看各路大神的文档,原来 Autoit 完全可以直接反编译。
18.JPG
感谢 ximo 大神如此好用的 DeAutoIt,直接拖入,Decode 秒秒钟搞定,生成一个呼死你 98.exe.au3 文件。由于这是反编译的源码,因此我们最好能弄个编辑器,所谓工欲善其事必先利其器,百度一个 Autoit 的 SDK 环境,打开反编译的 au3 后缀的文件。
三 、反编译分析及源码修复
1、删除开头的三句由工具自动生成的注释。应该是分号”;”表示注释,而不是双斜杠。
17.JPG
2、头文件修复
初略翻看反编译的代码,有很多常量、字符串,API 定义,直接运行也有很多错误。
16.JPG
有过高级语言编程基础的人都知道,编译器在编译的时候,会将所有的相关文件预处理到一个文件中后再编译链接,而这些常量,API 函数就是编译的时候加进来的。接下来的任务就是找到程序真正的开头,把其他无关部分剔除。
继续需求万能的百度,在看雪和 52 有相关的文章,Autoit 的程序,以如下代码开头,直接 Ctrl+F,查找:
OPT ( “MustDeclareVars” , 1 )
OPT ( “TrayMenuMode” , 1 )
OPT ( “WinTitleMatchMode” , 2 )
OPT ( “GUIOnEventMode” , 1 )
找到以后,上面的所有代码删除。

15.JPG
选择菜单->工具->语法检查(Ctrl+F5),有牛多错误。晕中。
14.JPG
错误 1
WARNING: $DLL 可能未声明或者未创建  WARNING: $GUI_SHOW: 使用前并未进行声明.
解决 1:
这种是没有申明变量,直接查找 Decode au3 的文件,copy 过来。
GLOBAL CONST $STDOUT_CHILD = 2 
GLOBAL CONST $STDERR_CHILD = 4 
GLOBAL ENUM $TOOLBAR_1 = 1000 , $TOOLBAR_2 , $TOOLBAR_3 , $TOOLBAR_4 , $TOOLBAR_5
GLOBAL $TOOLBAR_STRINGS [ 5 ] , $TOOLBAR , $TOOLBAR_IMAGE , $TAB1 , $TAB2 , $TAB3 , $TAB4 , $TAB5 , $TOOLBARON
GLOBAL $HSTATUS 
;申明变量
GLOBAL $BUSEADVTRAYMENU , $NTRAYMENU1 , $NSIDEITEM3 , $GPEDIT , $ABOUTITEM , $DIRCREA = 2 , $WORKDIR , $WORKTEMPPATH , $SERVER_URL , $INPUT4 , $DEBUG , $PICFILE , $ICOFILENUM , $DLL

错误 2:
错误: 表达式错误
IF FILEEXISTS ( @SCRIPTDIR & “\img\wav.exe” ) THEN SHELLEXECUTEWAIT ( @SCRIPTDIR & “\img\wav.exe” , ” “” & $MEDIAFILE_WAV & “” “” & $MEDIAFILE_MP3 & ” “”
解决 2:
这是引号的问题,需要将双引号引起来的单双引号改成单引号。
13.JPG
错误 3:
ERROR: _TRAYICONSETCLICK(): undefined function.
函数未定义
解决 3:
查找函数所在的头文件,将其加入脚本文件。
这个工作是整个脚本修复过程中最难的,大部分函数都可以在这个在线文档中心找到。
http://www.autoitx.com/Doc/
例如
_GUICtrlToolbar_AddButton 需要加入#Include <GuiToolBar.au3>
12.JPG
修复后的头文件如下:
#include <IE.au3>
#Include <GuiImageList.au3>
#Include <ScreenCapture.au3>
#include <WinHttp_GetRespond.au3>
#Include <GuiListView.au3>
#Include <GuiToolBar.au3>
#include <ButtonConstants.au3> ; 定义了 $BN_CLICKED 等等跟按钮有关的常量
#include <WindowsConstants.au3> ; $WM_COMMAND 等等系统信息代号在此定义
#include <GUIConstantsEx.au3>
#include <GuiButton.au3>
#include <GuiComboBox.au3>
#include <GuiEdit.au3>
#include <GuiMenu.au3>
#include <GuiToolTip.au3>
#include <file.au3>
#include <FileConstants.au3>
#include <String.au3>
#include <Date.au3>
#include <INet.au3>

错误 4:
ERROR: MACADD(): undefined function. 
作者自定义函数找不到。
解决 4:
在反编译的源文件中,拷贝这类函数贴入待修改文档即可。
11.JPG
错误 5:
有部分函数找不到头文件,发现是托盘相关的,暂且注释,不影响程序的主要功能。
解决 5:
注释相关代码
10.JPG

修复以上错误以后,软件终于正常跑起来了。
09.JPG
四、破解
1、更改标题
GLOBAL $VERSION = 4.000000e+000 , $DL_QQ = “88888888” , $WEB_URL = “” , $SOFTNAME = “手机攻击器 [52 破解首发]” , $VERTYPE = “X” , $SOFTBJ_JPG = “main.jpg” , $SOFTNAME2 = “” , $DL_NAME = “sjgj”
GLOBAL $YSERVER_URL = “j8call.com” , $SERVER_NAME = “j8”

2、更新机制
作者利用各大微博,发表一篇显示当前最新版本的加密字符串进行更新。
$A = SEARCH_SEVER ( “http://www.cnblogs.com/kgcall&#8221; , “blog” , “T” )
IF $A <> 1 THEN
$A = SEARCH_SEVER ( “http://myblog2013123.blog.163.com/&#8221; , “163” , “T” )
IF $LINKSERVEROK <> 1 THEN
$A = SEARCH_SEVER ( “http://www.cnblogs.com/kgcall&#8221; , “blog” , “A” )
IF $LINKSERVEROK <> 1 THEN
$A = SEARCH_SEVER ( “http://myblog2013123.blog.163.com/&#8221; , “163” , “A” )
IF $LINKSERVEROK <> 1 THEN
TOOLTIP ( “” )
MSGBOX ( 48 , “抱歉![” & $SOFTNAME & ” 当前版本号” & $VERSION & “]” , “对不起,无法连接网络电话服务器,或许软件版本太旧,请联系客服。客服 QQ:” & $DL_QQ )
08.JPG
从微博内容看,应该有 X8/J8/C8 几个版本,我们看看如何解密
查看函数
FUNC SEARCH_SEVER ( $SERVER_SEARCH , $SERVERURL_NAME , $HTML_LINKTYPE_I = “T” )
添加调试信息(ALT +D):
ConsoleWrite(‘@@ Debug(‘ & @ScriptLineNumber & ‘) : $BALANCETXT = ‘ & $BALANCETXT [ 0 ] & @crlf & ‘>Error code: ‘ & @Error & @crlf) ;### Debug Console
$LINKURLCODE = $BALANCETXT [ 0 ]
IF $LINKURLCODE = “over” OR $LINKURLCODE = “gameover” THEN GAMEOVER ( )
$LINKURLTXT = _HEXTOSTRING ( CHANGE_NUMBER ( $LINKURLCODE , 2 ) )
ConsoleWrite(‘@@ Debug(‘ & @ScriptLineNumber & ‘) : $LINKURLTXT = ‘ & $LINKURLTXT & @crlf & ‘>Error code: ‘ & @error & @crlf) ;### Debug Console

解密结果如下:
07.JPG
这也是作者的三个服务器所在。
06.JPG
域名查询,不同的人所有者,可能是作者不同时期待过的公司用过的域名把。
05.JPG
3、服务器验证机制
主要实现方法均在 函数  FUNC READDATA ( ) 中,我们来分析下这个函数
增加调试信息,看看从服务器拿到了什么数据:
FUNC READDATA ( )
LOCAL $AARRAY2
$COMBOTXT = “”
TOOLTIP ( ” ” & @CR & ”       正在连接网络电话平台。。。ok   ” & @CR & ”   (如长时间停滞请重关闭后新打开软件)   ” & @CR & ” ” , @DESKTOPWIDTH / 2 – 100 , @DESKTOPHEIGHT / 2 , “” , 1 )
IF $SHTML = “over” OR $SHTML = “gameover” THEN GAMEOVER ( )
$AARRAY = STRINGSPLIT ( $SHTML , “|” , 1 )
ConsoleWrite(‘@@ Debug(‘ & @ScriptLineNumber & ‘) : $SHTML = ‘ & $SHTML & @crlf & ‘>Error code: ‘ & @error & @crlf) ;### Debug Console

返回信息:
$SHTML = 120|4.0|1||0||0|||2||随机显号#BA#0/显号#B#3/不显号#A#3/破黑名单#BA#3/破白名单#BA#5/一直响#C#5|http://www.epshops.cn/soft2/sjgj/call.rar|2312817852|2312817852@qq.com|*荣校|http://user.qzone.qq.com/2312817852/main|手机攻击器|643385|sjgj| [请按软件上 QQ 支付宝联系付款,要求付到其它帐号都是骗子]||386802|success

显然是一大串用”|”分割的字符串,那么接下来需要解析这些字符串。

OFTBGMIN = $AARRAY [ 1 ]
;$NEWVER = $AARRAY [ 2 ]
;软件版本
$NEWVER = “4.0”

;$ON_OFF = $AARRAY [ 3 ]
$ON_OFF = 1;

$SELFORDER = $AARRAY [ 4 ]

;剩余天数,大于 1000 为永久会员
;$REDAYS = $AARRAY [ 5 ]
$REDAYS = 8888

IF $REDAYS = “” THEN
$REDAYS = 0
$REDAYSTXT = “(未购买)”
ELSEIF $REDAYS > 1000 THEN
$REDAYSTXT = “终身”
ELSE
$REDAYSTXT = $REDAYS & ” 天”
ENDIF

;不知道什么东西
$NEWVERTXT = $AARRAY [ 6 ]

;等级,6 应该是高等级了
;$LEVEL = $AARRAY [ 7 ]
$LEVEL = 6

;到期时间
;$REGOVERTIME = $AARRAY [ 8 ]
$REGOVERTIME = “9999-12-31”
IF $REGOVERTIME = “” THEN $REGOVERTIME = “(未购买)”

;不知道什么东西
$KVER = $AARRAY [ 9 ]

;响铃时间
$RINGTIME = $AARRAY [ 10 ]

IF $RINGTIME < 0 THEN $RINGTIME = ABS ( $RINGTIME )
;$QQSIGN = $AARRAY [ 11 ]
$QQSIGN  = “8888888”

;作者的响铃设置,形如如下字符串
;$IMEISELECT = 随机显号#BA#0/显号#B#3/不显号#A#3/破黑名单#BA#3/破白名单#BA#5/一直响#C#5
$IMEISELECT = $AARRAY [ 12 ]

;下载地址
;$DOWNURL = $AARRAY [ 13 ]
$DOWNURL = http://www.52pojie.cn

;作者 QQ
;IF $AARRAY [ 14 ] <> “” THEN $DL_QQ = $AARRAY [ 14 ]
$DL_QQ = 8888888

;支付宝信息
;$DL_ZFBACCOUNT = $AARRAY [ 15 ]
;$DL_ZFBNAME = $AARRAY [ 16 ]
$DL_ZFBACCOUNT = “==无痕破解==”
$DL_ZFBNAME = “无痕破解”

;IF $AARRAY [ 17 ] <> “” THEN $WEB_URL = $AARRAY [ 17 ]
$WEB_URL =”www.52pojie.cn”

;IF $AARRAY [ 18 ] <> “” THEN $SOFTNAME = $AARRAY [ 18 ]
$SOFTNAME = “手机攻击器”

$YLINKCODE = $AARRAY [ 19 ]
IF $AARRAY [ 20 ] <> “” THEN $DL_NAME = $AARRAY [ 20 ]
;IF $AARRAY [ 21 ] <> “” THEN $SOFTNAME2 = $AARRAY [ 21 ]
$SOFTNAME2 = ” [破解:无痕  52 破解首发 不要非法使用] “

$CLOSETRY = $AARRAY [ 22 ]

$MACID = $AARRAY [ 23 ]

修改完以后运行如下:
04.JPG
4、 呼叫机制
查找字符串“成功提交“,加入如下调试代码:
$POSTTXT = “macadd=” & $MACADD & “&tp=call&phone=” & $INPUTPHONENUM & “&taskto_imei=” & $COMBOREAD & “&linkcode=” & $LINKCODE & “&upylinkcode=” & $YLINKCODE & “&callbegin=” & $CALLBEGIN & “&taskid=” & $TASKID & “&callnum_code=” & $CALLNUM_CODE & “&dl_name=” & $DL_NAME
$URL = $SERVER_URL & “call_link2.asp?” & $POSTTXT
ConsoleWrite(‘@@ Debug(‘ & @ScriptLineNumber & ‘) : $URL = ‘ & $URL & @crlf & ‘>Error code: ‘ & @error & @crlf) ;### Debug Console

IF $DEBUG = 1 THEN CLIPPUT ( $URL )
IF $DEBUG = 1 THEN MSGBOX ( 262144 , “呼叫提交地址” , $URL )

输入一个号码以后,可以看到向服务器然会如下数据:
$URL = “http://www.epshops.cn/ser/call_link2.asp?macadd=SA29BE68834B2B2&tp=call&phone=13766178056&taskto_imei=BA&linkcode=338874&upylinkcode=418162&callbegin=begin&taskid=&callnum_code=2559DA&dl_name=sjgj”
其中有 MAC 地址,手机号等相关信息。

再看看提交以上 URL 后返回数据,返回数据分为 2 种:
第一种:$SHTML = |1||556262|0|751305551948518377027042DA57008001E58B159|137514|120|success
第二种: $SHTML = no access-phonehavecall|success

第一种: 成功提交到服务器,进行呼死你操作。
第二种: 提交失败。
五、结语
因此,文章写到这里,我们基本已经可以给出如下结论:
1、本地 exe 只是一个提交工具,提交数据到服务器,进行呼死你操作。
2、由于呼叫机制在服务器实现,因此,本地破解徒劳。
3、这是一个不完全的破解,由于服务器验证,每个号码只能呼叫提交 20 次,但破解成功的地方是,可以进行新号码无限提交。
4、测试呼叫频率超高,号码随机显示,整人效果杠杠的。

六、工具及成品下载    链接:http://pan.baidu.com/s/1qWC6Z4g


回味依旧 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:[转载自 52pojie] [Autoit]某呼死你破解分析 – by 无痕
喜欢 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
(5)个小伙伴在吐槽
  1. 太专业了。默默路过。 周五了,过来看看,问个好。(。・`ω´・) 欢迎回访:光临 玄幻小说 http://www.xuanhuanmi.com 。
    无界仙皇2016-08-07 16:52 回复
  2. 过来看看,问个好。(。・`ω´・) 欢迎回访:光临雪鹰领主 云森书院 http://www.yunsensy.com/ 。
    雪鹰领主2015-12-20 22:35 回复
  3. 太专业了。默默路过。 周五了,过来看看,问个好。(。・`ω´・) 欢迎回访:光临养鬼为祸 灵异小说网 http://www.lingyixs.com 。
    养鬼为祸2015-07-03 19:54 回复
  4. 太专业了。默默路过。 周末了,过来看看,问个好。(。・`ω´・) 欢迎回访:光临海量高清无水印の美女图片站“MNTPZ.com”。
    美女图片站2015-06-27 18:55 回复