版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
抗反编译程序镇楼:H反编译失效反编译代码不可用2.fas(171.07KB,下载次数:5)反编译人员可以先测试这个附件,需要加密的朋友可以看下面:提供一些简单容易操作的Fas修改方法给需要抗反编译的朋友。不定期更新。首先我们学习多Fas合并为一个Fas。因为目前反编译递都是针对单一Fas文件的,因此可以通过合并Fas方式稍微对抗一下。我们写两个小文件:d:\1.lsp内容:(defunc:qq()(print"q"))编译为1.fasd:\2.lsp内容:(defunc:bb()(print"b"))编译为2.fas不用任何工具的方法:1.(vl-file-copy"d:\\1.fas""d:\\2.fas"T)复制代码加载2.fas,是不是两个命令都有了:)【如果你有兴趣,也可以用这个函数自己合成VLX】然后我们开始学习二进制工具的使用:准备工具:EverEdit编辑器,这个网上有很多下载,论坛也有低版本可以搜索到。用2.lsp重新生成2.fas用EverEdit编辑器打开1.fas是一堆16进制编码,不用管,全选复制。everedit打开2.fas。粘贴到后面(红色表示修改),直接另存为3.fas为了防止看的晕,图放后面然后我们开张新图纸,加载3.fas,测试两个命令都存在。这个类似于VLX,但是不能打包txt和dcl。恭喜你完成了Fas的二进制修改!如果你把一个真Fas藏在几十几百个假的Fas中间(记得假代码和真代码要差不多一样,函数名类似),那么想找出来真Fas也不容易。下面这步可以让所有的反编译工具反编译后的代码都不能使用,原理可以看下大海的帖子(看不懂可以忽略看后面)【首发】定义真正意义的可选参数(附带防反编译技术)通过修改Fas实现函数真正的多参数,首先我们写个简单的程序:d:\4.lsp内容:(defuntt1(a);注意函数不能是c:开头,参数1个以上(printa))编译为4.fasEverEdit打开4.fas看到一堆二进制的内容,我们用Ctrl+F搜索14,找到第一个14,后面跟了几个01,如下:1401010100(14表示函数开始,后面第一个01总是大于等于你参数个数,第二个01和第三个01总是等于你参数的个数,最后总是00)修改方法:鼠标点在最后的00上,输入01,保存。为了防止看的晕,图放后面加载4.fas,命令行测试结果:命令:(tt11)11命令:(tt112)11命令:(tt1123)11命令:(tt11234)11根据你函数参数的个数,后面的01数量会变化。为什么反编译后不能用?因为源码不支持这种多参数调用,只要你改的函数够多,反编译后就需要修改你的代码否则不能用。如果需要更多变化,可以回头看大海的帖子了。合并Fas图:
OD:\2,-fasfr-EverEdit:S?(牛旧需竭任】本看CV]言找⑤]文档[卬工程TOTJBCD扩起(0囱口卬帮助旧:飞.2-巴同圆Ifc玄On!&-▼<-匾1LQ3鳍|画:飞运*崎DCOOCOOC"CD0A2104G4153342D4649中U45203B2044D-DQCCO1OGF20GeGE174SOG3G3石LSES7G52DS921000=00020QD0A3134.0D□Jk33202414■QQODDODO■090200000030co35O1DLcoD31624CD办313238203520DOD-0OD4O24BI>SH109B7043EE703.7C-W口12月4£工星15■£¥DOOOQO5O6B363c戛日237-5ZACDOBAEF36AocB76A.IEO-OQ-DOOCC-3D5-0051443工00653ODDB£631OD9E£EWA00000070SE35BG3XOG5740OE5■其1711074EOCOBDOOOQDBO633165F56Eca05Q£ocB431575B12日726D-DQ-DCG9O43堡444214F屯9S2313D基日2DccB6D5ocABOOGOOO^O355C07134.7li>40主工OD4COO口日G231OE2LDOOOOQOBO6ECE04D4口5B-531saC613£TL549IB■OSIEDOOOOOCOIB163C95FB33B5E-lBDOA3E6GGL733420D-DQOOODOG372T5GE63ea0A■36243E41352E1342F32=OOQ-ODDEO300EDA2045415-3342U4645■4C45-203B2DDOQOCOFO44日厅206EGF742063eaGTGE£7652065OODOO1OD21◎I?OZk3134OrO居332D24工4oooooooo<3*D-DO-OQLIO02QOS5O1O1DO03L6NAonOA3X323B2035-O€GOO12O20242B8422OACEBCLOA4AJ2CFaa5C0744OODCD1_3O317eGE50445■九492£OGS4ca4AEB25OBS4DOOOOL4QCD2ZLC7DEE53L5C065L471447110D25DDD-00-0015D39ecIB373EB57fi5B3DC75EC28FE5645口O-DDODl-GDC>7a4r7G5ZL三110752ODOBG104£3E522-DODOQL7O35CFD5■5MACDEB4315口3D1304IO43ID07DOOOC18C-071.5g£231OE36B£23O1S3.BEIO5-6旧厅ECD-DOOCX9O3S5nO1LO4r7ID-41工工32l.JkQU。日G23B0730ODQOQXAOas35LS35Q-Au日FAC耳¥6SE-6EE6DEF043Be&D-DGOG1BO6173342D6372756E636SOA3B243B4135ooo-ooico2F342"百3220■改多参图D:\4.fssr-EverEdit安(牛CB4回查看区)宜找⑤文档⑪工程®工具CD扩事⑷专口①帮助但)不,日•冷层层|*10|*由CH妾V园辟|园孔扁s算『圈;蝴贮第 41296oc41296oc4201235o4932212so461B91o9B236co3o40€)1工r-cD22005m255114FD4Gco216c7L5o3846a525D9E4-o4A5i*G1c34-3GI45D3D4E2口245Dao553262c31D4msQsEs3G3o374m口区3后日匚52ooo3Et4-rsD447o1Q12GGc4F34£3D264OE2O6L82lo3-o-t-i33-ADcDEo口2口507。Dp-Do1cADGooEDlFBmm1EDA67EGow-02GE6D9Da5557GL725E5273D57CTI3F43©生4口工方3cA2Gn-2EE1-423B57B4T7Go13236TT34-431-073so3cLF3545c22D57G5oo13G3E929B-HD25<3457EF3B6oDBa3匚L7£□421D2422F匚3FB4I54FsEE工&du否5133DOE7A3E3444496OODODDOODCOOOO1D00000020CCOOOO^O00000050GODODOGOD3000D70CODOODeO00000090OOOOOOiOCCOCOOEOOCOOODCO接下来我们用垃圾代码干扰反编译工具,让反编译工具失败,这次要改2个编码+5个垃圾编码原理贴:[原创]给AutoLisp语言增加goto指令看不懂没关系,直接看下面:首先写一个正常代码5.lsp内容:(defunc:tt()
(print"ok"))加一句关键的:(defunc:tt()(print188);这句代码要修改成跳过执行,留下垃圾给反编译(print"ok"))生成5.fas用everedit打开5.fas首先你能找到刚才的函数开头,也就是1400000000,下面我们为了方便查看在编码区【鼠标右键】【显示】【10进制】0D:\5.fas-EverEdit文件旧编着任J_查君M查提里戈枝巴工程(乜工具可扩展㈤_窗口叫帮助 弋•洛信圄之电吉•QI1幺箕圜l.fa^|g)三相匕据|圜4/式|圜Sfas总00000000■0000001GC0000020000000300000004000000050000000600QQQ0D7Qoooo&uan00000090OOOOOOAOOOOOOOB-OOOOOOOCDooooooruC'DOOOOEO]0130100311L032110130100500000000D03022032070 DS5 093 052 045 D7C 073 DR0111 116 032 099 104 097 11D ID:0053 013 01D 05L 032 03G 020 CD(0053 00L 002 OOD 003 01D 009 00:eni-7mn为4当:匚1n门口口) 宝门^^-L?口690320593320G9101C32105115033ODDCDOODD351139:000053OOL0020口口03619519536605111BQIS0700日0351^114OIL099110700190211316914002096040100731211711D09--2------•一就削U) Ctrl+Z里数R) Ctrl+YHW(T) Ctrl+X宜制(0 CtrkC粘贴冏 Shift-t-Ins聂(AJ CtdM复制为HEKfe本亭(口D口GJ从HE双本本中粘贴(DDOC..J047060070OBB076031063101093007€57253255066050013.0S900702703102301710G030OSLOGO1951950G7€50€71C17OOL€25013€37007024.027204.1150520320”Hi05Z04705DD4&自津⑹ Ctrl4-G监视器(I)►-M? 1破制出J献」。NSW)14变成了020,后面跟着还是000000000000.这时候我们向后找051和188这个数字(以后为了找数字方便,我将用10进制进行讲解)发现188?没错,这个188就是你刚才写的188.如果你现在改了188保存Fas,输出的数字将发生变化。
OD:\5,fas-EverEdit文件旧编璟旧直音M查找⑶文档(D)工程旧工具⑴扩展囿窗口⑴帮助(H)001兴屯喳,号舞\§\l.fas0陷3,fas您圆4.fas然圈1S.fs£300000000013CIO03207006506305204507007307606903205903206B00000010111032110ILL1160320991D40971101031010321D511603300000020013010050053013D10051D32036020ODO000ODOQQo|o51L8fl|00000030DDO000000053001Q02DOO0030100090D100005300100200000000040003022OGG0L3DIDD49D5D0570320530320361951990€G051000000501LB146147023Q43027LOODOS018017058047060070089076OODOOOGO079079085069177179045D50llfi251203031069IC-105300700000070019070087067017003027D0705709£003057253255066050ooooooao035161147039017034054092066021093013069007027081000000900110901140322151370670560i21601470230171D6030061OOOGGOAO070019020067043Q06D8SQ09011099049060195199D67050OOOOOOBO11B16914403702710209300701S071029071017001025013ooooaoco002056049021214139067051124169145037007024027204OOOOOODOOLD0731230L31730G2D27010059102097115052032099Ll<DOOOOOE.O1171100991D4010059036059065053047052047050040然后我们开始修改,记得这次要输入3个数改一个编码:051改成087(固定修改,表示要跳过)188改成005(固定修改,跳过5个)跟着的三个编码都是000000(不用修改,这三个属于087)再来5个编码xxxxxxxxxxxx改成任意0-128之间的5组数字即可(也就是让反编译失效的垃圾,红色部分推荐值:003006009020042053057087103104106和其他数字混搭)原:020000000000000...051188000000000xxxxxxxxxxxxxxx改:020000000000000...087005000000000003111100009122保存5.fas,加载后只输出ok。说明我们修改成功了。注意:不管020和188中间有多少其他内容,我们总是从051188开始修改的。QD:\5,fas*-EverEdit文件6编辑⑥意看M苴找区文档的工程⑻工具(□ 扩语闻自口(D静助回3*2目目sa予圜Lf的随咽ML畿|圜4.玲宓I匾隹用*豆ooocoooo0130100320700C5D93052C4507007207£OG9022059032OS9oaocooio111032110111116D32099104057110103LOL032105116033000G0020013010050053D13DID05103233602C000DOQ000DOO03700500000030000000D00|CGWLl^100005122日10005001DOO053D01002000000C004D003022D360L3OLDD490500570320530320361951990660510000005011814614702.3O40027100006018017098047OGO070OGG076ODOCOOGO079079085069177179045050ne251208031069101053007OOOCDO70019070037067D1700302700705709a003057253255066050ooocooao03516114703901^0940540920£6021053013069D07027D81DQ0C0090Oil098114032215197067056D42160147023017105030D61000G00A0070019D200670430060B8009Oil093049060195199067050OOOCOOBO113169144037027102093007Dia071029071oocooco002096049021214199067051124169145037007024027204DOOCOODO010073123013173062027CIO0591D2097115352032099114OOOCDOEO117110059134D100590360590E505304705204705004B这里我们就需要了解一下为什么这样修改可以抗反编译首先我们需要了解vlx和Fas格式。vlx=fas+txt+dclvlx包括头部、fas、文本、dcl、尾部等,头部说明了包含的文件和独立命名空间等相关说明,我们用普通文本工具打开就能看到。因vlx拆分工具和代码也是公开了很多,这里就不再详述。简单讲一下Fas的文件格式和编码原理。Fas在解码前包括头部、函数代码区、加密区、尾部。目前有一些公开的解码工具(就是把加密区转换后能够看见数据区的字符串)比如:通过二进制读写彻底修改VLX或者FAS原有命令还有:fas解码程序6.1版,发布vc版,防止误报病毒。头部总是固定的,包含了这个字符串:FAS4-FILE;Donotchangeit尾部也总是固定的,一般是倒数10个字节。加密区每次Fas生成都会变,所以你可以用同一个代码生成两次来对比。然后函数代码区同一套代码每次生成都是固定的。只要你的代码有defun自定义函数,那么都是从20xxx0这样的编码指令开始的。(10进制编码)Fas会把变量、字符串、单引号表、参
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 山西省临汾市洪洞县第二中学校2024-2025学年七年级上学期12月月考地理试题(无答案)
- 江西省吉安市永丰县十一校联考2024-2025学年七年级上学期12月月考历史试题(含答案)
- 贵州省贵阳市2024-2025学年高一上学期联合考试(二)数学试题(含答案)
- 2024-2025学年陕西省西安市蓝田县八年级(上)第二次月考物理试卷(含答案)
- 人教版二年级下册语文课件19《最大的书》课件
- 2021年青海省中考语文试卷(省卷)【原卷版】
- 相对密度仪校准规范-试验报告
- 年产50万套暖通设备生产线项目可行性研究报告写作模板-拿地申报
- 2024年高一上学期期末语文考点《文学类文本阅读》含答案解析
- 2025年中考英语一轮教材复习 七年级(下) Unit 7-3
- 讲课比赛-全概率公式贝叶斯公式-概率论与数理统计
- 煤矿岗位标准化作业流程
- 《二次根式》大单元教学设计
- 华住酒店管理制度
- 心理门诊设计方案
- 国开电大《人文英语3》一平台机考真题(第八套)
- 临床见习教案冠心病地诊疗教案
- 患者安全与风险管理
- 文印设备维修维护服务投标方案(技术标)
- 煤质柱状活性炭
- 病理学中级职称考试试题
评论
0/150
提交评论