好友
阅读权限10
听众
最后登录1970-1-1
|
本帖最后由 a621460 于 2023-8-19 19:02 编辑
首先 本人有一点点的基础
第一课关于壳和脱壳
首先 壳如何去理解 有人说 壳是衣服 一个软件好比一个人 像了解它你得先脱光它衣服
昂 怎么说呢 我不会写壳 也看过很多课程 都是白嫖的
壳 可以明确的说 壳 是一个针对特定 参数进入的一个门槛 当然也可以不脱去做破解 也是可以的 这个得看你对壳和软件构造的了解程度
简单的说 软件是一个房子 你想看房子内部 你需要 钥匙 才能打开门 自己手动打开软件 就好像 是宗杰帮你打开 你就只能按照宗杰给你介绍的规则 去看房子 你想自己看 要么自己买下来 要么自己去吧们给它弄了
笔记
关键1
走壳 走下不走上 这个是手托的关键
关键2
可以不需要知道是什么壳 也可以不需要知道 是什么软件写的 有一个很蠢但是很有用的办法
如果不知道是什么壳 并且不知道是什么软件写的 就一直往下走 一直走到 软件窗口跳出来(或者软件打开的特征之类的 比如右下角图标等) 那么你就距离入口很近了 (前提是这个软件得有窗口,如果是木马或者其他后台程序那种我还没弄过 没试过)
关键3
比如 走到call 跳完就弹窗 需要进入call 内部继续关键1 走一遍
需要了解一点汇编 一定要在 call后的第一段代码 或者跳转后的第一段代码 作为入口
比如
call 400600 进去走了 几句代码或者函数走了一小半 那么 400600 则为入口
以上这3个 是脱壳第一课的 核心关键点
关键4
这个怎么说呢 就是 其他 各种壳的方式方法 这个是需要你对壳 有一定的背书 你知道这个是什么壳 可以用什么方法 快速脱壳 能很大节约你的时间 也同样有用
我是一个新手 我还是蛮喜欢 自己手托 然后到 软件弹出来的那种感觉
以上只是针对 新手 纯小白 说的 这几个方法是理解很容易的 如果是大佬 其实可以看得出来 这些其实有点不严谨 真托起来的时候 还是会有很多 问题 比如找到入口 或者 入口有一些偏移之类的 等等
总而言之 目的是脱壳 其实就是找到 软件的真正入口 里面还是有很多细节方面的 比如在在向上跳转的下面一句 是一个call 需要在call 后面 继续运行 还有一些其他脱壳以后需要修复之类的问题 我托壳后 入口呢 也可能多少存在一点 不对 但是可以打开 有一个坏处 就是 查壳 会有点混乱 比如你在 入口的前一句 比如是一个jmp 那边 设置为入口 也可以托 也可以作为入口 只不过让系统多读一句代码 查克可能会显示没托干净或者吧C++ 语言 读成C VS 7 读成VS8 也可以在 jmp 跳转后的 地址后的一句代码选择入口 也可以打开 但是不知道会发生什么 不可预知的 一些软件bug 这个最好是自己多实验几次 手动走几次 在一个 如果身为小白 也不要怕 不一样 也不要担心 做错 做错了都会做错 你试过错的 并且学会怎么处理 那么你就比别人多一道经验 比如今天是一个UPS 你错的多了 在将来 遇见一个未知壳 呢 在都是未知的情况 你就比别人多一个错误知识点的判断 在学习过程种有些弯路是可以尝试走一下的 只有你能更全面的了解 你才能有更多的底气 来说明或者应用这些东西 |
免费评分
-
查看全部评分
|
发帖前要善用【论坛搜索】功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。 |
|
|
|
|