吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 7399|回复: 17
收起左侧

[原创] 关于新手破解问题的总结,大家来做做或者看看吧。

  [复制链接]
yang785962193 发表于 2014-12-10 00:00
这个文章不是我写的,但是我总结了一些,写了点自己的看法,修改了原来的一些东西,求不喷,我只是个新手!!!谢谢大家了
首先我们来了解几个语句:(破解的时候需要用的)
     cmp    a,b          //cmp是比较的意思 !在这里假如a=1,b=2 那么就是ab比较大小.
        mov a,b          //mov是赋值语句,b的值赋给a.
        
je/jz               //就是相等就到指定位置(也叫跳转
).
        
jne/jnz          //不相等就到指定位置
.
        
jmp             //无条件跳转
.
        
jl/jb            //若小于就跳
.
        
ja/jg         //若大于就跳
.
        
jge          //若大于等于就跳
.

1.     当软件使用弹窗方式提示我们错误时,我们可以使用哪几种方式进行寻找关键跳?

堆栈法、搜字符串、push窗体、搜peek message或get message
补充:F12堆栈暂停法,API断点法,包含所有API,泛指一切API
利用堆栈中记录的API进行锁定,这样回答也可以,回答者:珈蓝夜雨 ,可以这样回答
补充几个API:
模态对话框和非模态对话框
DialogBoxIndirect
DialogBoxIndirectParam(A/W)
CreateDialogIndirect
MessageBoxIndirectA
MessageBoxIndirectW
获取编辑框文本,经过算法call,弹出错误
GetWindowTextA
GetWindowTextW
GetDlgItemTextA
GetDlgItemTextW
GetDlgItemInt
利用弹出网页,谈错误
ShellExecute,WinExec,,CreateProcess
----------------------------------------------------------------------------------------------------------------------------
3 g! D- _+ |2 D6 d2 E- c: R' {
2.     当软件不提示我们任何错误信息时,此时我们该使用何种方式进行寻找关键跳?
按钮事件、窗口标题、搜peek message或get message
补充:例子:GetWindowTextA,SetWindowTextA,
API断点法,包含所有API,泛指一切API
可以通过工具辅助查找,DEDE,VB Decompiler,等工具
可以通过脚本法朝朝按钮事件,delphi,VB,按钮事件脚本
F12暂停法 ----------------------------------------------------------
------------------------------------------------------------------------

3.     一个软件载入OD后,查找不到字符串的原因有几种?分别是什么?
到文本 到字节集 到文本 到字节集 到文本 .............、被加壳、 vm
补充:字符串倍加密,被加入花指令,有壳子没有脱掉,附件在dll里面,dll被加壳子
特殊,鸡生蛋类型,释放型,线程注入,特殊类型
- a2 Z2 [) {+ ]: ~
4.     程序正常脱壳后为什么无法正常运行?有几种可能造成此结果?该如何解决?$ S" ?6 `2 r  h0 T" K4 q  X# G( q
自校验:下exit断点,nop、输入表需要修复

补充:IAT未修复,有很多原因
自效验,双开OD对比
OEP不争取导致程序无法运行
注册壳子带SDK,比如ZProtect
附加数据,没有修复,winhex补上就ok
ExitProcess,ExitWindowsEx
7 L% O3 A  q0 T3 W& m. p% o
5.     说明什么是关键CALL,并且我们该如何寻找关键CALL?
被多处调用的,一般看堆栈窗口里出来用户名密码就是了
补充:关键call和关键跳很近,寄存器出现注册码,真注册码和假注册码对比
关键call,暂时想到这些
6.     修改关键跳时,什么时候使用NOP,什么时候时候JMP?& X' S. l) W. b5 P  t
直觉
补充:跟踪下去,提示错误,就跳过,如果跟踪下去( m) T2 U2 z1 a) m7 S
7.     在VB程序中,下API断点MessageBoxA为何不起作用?" U. o9 Y- Z  v4 Y# [9 W6 L1 ?
bp rtcMsgBox,不谢,VB把WindowsAPI吃了
补充:VB把WindowsAPI吃了
以上说法,完全错误,VB有自己一套API专用函数,和其他任何语言不相通
特殊情况,MessageBoxA,也是可以断下
纠正恒大错误认识,下API断点MessageBoxA为何不起作用?
不是绝对的
-----------------------------------------------------------
8.     大部分程序关键CALL的返回值存放在哪个寄存器里?% o; W! ?- r/ j. o/ ~, i
EAX,返回值能放下就放,放不下就放地址,话说编译器写的程序都是这样吧,汇编语言写的就不知道了
补充,一般是EAX,经过特殊处理例外,非绝对
EAX:累加器 4 ^* u. _# _! [) g' x
EBX:基址寄存器 / w9 f1 h$ h) L: z. x
ECX:计数器
EDX:数据寄存器
ESI:源地址指针寄存器' d/ o! M9 Z% x, t: M1 R
DDI:目的地址指针寄存器' G& }8 `8 j% W, ~6 Y( M2 U
EBP:基址指针寄存器
ESP:堆栈指针寄存器 ( q; [  s/ L/ E, F; \
9.     为什么带壳的程序要运行起来去401000处?401000处是怎么回事?
00401000虚拟地址初始段,程序领空初始段,内存初始段,方便查找内存中字符串,只要PE文件头没改过00401000就能帮大忙
补充:dll应该是100010007 o- o& g; `2 |" x+ {3 X/ I
10.   如何在系统领空快速返回至程序领空?
Alt+F9,返回用户,Ctrl+F9,执行到retn
补充:在堆栈中找到地址,反汇编窗口跟随
在代码段设置访问上设置中断
11.   DeDe可以调试什么语言编译的软件?+ z, b6 O8 R. F4 H% O- P: R
Borland  Delphi??
回答正确,没什么补充3 ]2 y2 j/ u3 z1 }1 G' d& n$ y1 V
12.   F8单步跟踪未启动的软件时,遇到程序跑飞该如何解决?
Ctrl+F2重载?F12暂停?忽略异常?
补充:F7进去分析
ANTI会让程序跑飞,壳子各种检测,OD插件设置不正确可以跑飞,正确设置OD插件即可
NET程序,VFP,PB,中间解释型语言,都不受OD控制,均会跑飞
-----------------------------------------------------------------------------------
13.   当遇到INI类型重启验证软件时,我们可以使用什么断点进行对其拦截?' Y+ ?! A5 e) ?4 M/ \
bp GetPrivateProfileStringA/W
补充:INI初始化文件相关2 g9 e, L+ i" i: A! M
bp GetPrivateProfileStringA
bp GetPrivateProfileInt3 d( k7 A- I4 A1 x
bp WritePrivateProfileString
bp WritePrivateProfileInt
ReadFile CreateFile  
14.   当遇到退出暗桩时,有几种方式取消这个暗桩,该如何下断?' \# [% L" Z* j0 D! w  f. {  b
BP ExitProcess,+BP-OLLY自带
$ l* Y& x, _* ?% {- J- M
15.   什么语言编译的程序可以使用Push窗体法?Push窗体法该如何操作?! T0 C) B$ `4 i  f+ [* c
试过的,C语言可以 易语言可以
补充:VB可以,另外我想任何语言都可以用PUSH法& F% Y9 I, S, F$ ]
16.   VB程序与其他大部分程序不一样,VB关键CALL下面的比较命令通常是与什么比较?
ebp,esp
补充:_vbaStrCmp  _vbaStrComp _vbaVarTstEq 8 M8 L: @- m. I
17.   我们手动寻找并修复IAT的时候,IAT断首的地址应该减去谁?
00401000
18.   万能断点都能断下什么?他能在什么平台下使用?5 ]( h* N! Q  ~* P( O2 q5 s
易语言按钮和时钟
补充:楼主回答不正确
有很多同学没有回答对
万能断点命令:bpx hmemcpy  XP可以用 有一位同学回答
后来学破解一般不知道这个函数
正确是 bpx hmemcpy是在win9x下用的,xp也可以用
关于这个函数说明:
HugeMEMoryCoPY,俗称万能断点,但在一般的编程书籍上很少提到,原因它是底层的东西,没有特殊需要,一般不直接调用。它的操作很简单,只是将内存中的一块数据拷贝到另一个地方,Win9x系统里很频繁地调用它处理数据。在WinNT/2K系统上相关的函数是memcpy,但在WinNT/2K上不同于Windows9x上,很少再调用memcpy来处理数据了,用此函数设断基本上什么也拦不住

19.   F12暂停法的堆栈回朔其实说的就是一个怎么样的过程?
出现信息框,暂停,打开“调用堆栈”,messagebox a/w 显示调用,F2下断点,重载运行,Alt+F9返回用户,在上面下段
20.   假设一个JMP可以跳过错误提示,而这个JMP并没有起到跳过错误的作用,这是什么原因造成的?. ^3 o$ ]3 G: B# D& P6 v
JMP上方有跳过JMP的其他跳转或CALL,刚刚遇到的程序就是,哈哈~~
有异常处理函数,或者

程序还有其他地方的验证,或者改的地方不是关键地址

21.   当我们遇到一个重启验证时,该从什么地方进行破解才能彻底解决重启验证?  r3 V' \( H. t4 _' R$ `* g
重启验证最好是寻码,如果是爆破就下退出断点,然后nop
补充:重启验证,一般是注册表重启验证,其他ini,dat,key,usb,各种狗

22.   字符串搜索时,是否应该输入完整提示信息?为什么?
一般情况不要,输入部分关键词会有意外惊喜,不过某些逗比程序会弄满篇字符串迷惑大家.......- u4 T1 r6 H5 z/ b
23.   论坛上很多人在求思路,这是怎么回事?- ~* \; Y9 X% S5 B0 k/ t. `
没求过,不知道 (专业装逼十五年,你,值得信赖file:///C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\ksohtml\wps2D0.tmp.png)
补充:求破解思路,或者关键地址,就可以破解软件,这个恒大回答更好
24.   当我们按下F12暂停时有几种方法回朔?
按K 进堆栈窗口
7 ^5 z0 z' v0 H/ W# x! ?4 D% X; l; |; v
25.   暗桩是什么?暗桩什么功能?
退出、锁定鼠标键盘、蓝屏黑屏、关机重启、设置开机密码(小学生专用暗桩)、sysprep(我能说我用过?)、格盘,主要功能是防破解
--------------------------------------------------------------------------------
补充:回答很好,我在补充几点
自删除,脱壳子或者破解,删除自身,实践过
弹出网页,不断弹出网页,遇到过
释放病毒,脱壳子后释放病毒,威胁破解人,让他系统崩溃,重装系统。
-----------------------------------------------------------------------------
26.   我们在修改关键CALL返回值的时候,常用的两指令都有谁?分别怎么使用?
mov eax,1/0     retn
补充:patch代码法,指令太多,知道人自然会用+ c+ e1 T! j- t
27.   能把OD修改为某某人专版的软件叫什么名字?; a' E. }/ R$ q* m6 T
WinHex,OD,IDA Pro,NotePad,Uedit32
补充:
28.   脱壳后自效验的程序在效验时,他在用什么与什么对比?# M1 e4 ~5 a1 L& O" F/ l: L
MD5、SHA1、CRC、版本号、描述、作者
补充:base64,rsa,诸多算法
文件大小比对等
29.   对于时间限制软件都有哪些类型?
取系统时间和使用期限对比,联网获取时间和使用期限对比,还有限制每次的运行时间,_启动窗口_创建完毕  延迟(2000)  销毁()
补充:, e1 P2 W/ I( N1 g; z/ Q* Z

OD,IDA,PEID,FFI,WINDBG,LORDPE,ImpREC FINAL
SEH异常处理
PE文件格式
API处理函数
都必须有深刻理解
另外一门高级语言必须会
32位汇编
E语言
VB,
最好掌握 c++,或者delphi

聪明的人学delphi
专业学c++

就这样了,希望大家看看,好好总结下经验

点评

楼主是在这里复制总结的吗?http://www.52pojie.cn/thread-261000-1-1.html  发表于 2014-12-10 02:31

免费评分

参与人数 4热心值 +4 收起 理由
82080976 + 1 谢谢@Thanks!
NOABC + 1 谢谢@Thanks!
xiaolei0517 + 1 谢谢@Thanks!
Shark恒 + 1 我很赞同!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| yang785962193 发表于 2014-12-10 09:23
我是看了  Shark恒 的帖子,然后百度到的答案......
82080976 发表于 2015-2-7 21:29
谢谢分享,看教程遇到瓶颈,不会了,所以找找看有没有什么启发的帖子,谢谢了,看的有点乱,感觉好难啊,看来还要努力呀
筱沫 发表于 2014-12-10 00:18
wanmei 发表于 2014-12-10 00:37
高手啊    我好多都不会
1002217709 发表于 2014-12-10 08:47
能把乱码去掉吗?看着蛋疼
Mrsin 发表于 2014-12-10 10:20
  写的很不错呀!
airsurfish 发表于 2014-12-10 10:23
学习了,总结的非常不错
你好呀 发表于 2014-12-10 11:32
很好,不错,谢谢。
头像被屏蔽
小诺 发表于 2014-12-10 11:45
提示: 作者被禁止或删除 内容自动屏蔽
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则 警告:本版块禁止灌水或回复与主题无关内容,违者重罚!

快速回复 收藏帖子 返回列表 搜索

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-5-6 08:25

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表