摘要: 一.前言 最近做软件需要一个功能,就是对文件进行加密。本来嘛,加密算法一堆一堆的,但是试了几个成熟的加密算法后发现对文件进行加密需要的时间很长,特别是上G的文件,这样客户是接受不了的。最后没办法了,好坏也要找一个吧,就选定用Base64加密。标准的base64加密很简单,而且编码表也是固定的,所以只 阅读全文
posted @ 2017-12-01 15:37 ye_ming 阅读(2018) 评论(0) 推荐(0) 编辑
摘要: 电子银行风险管理责任: 1、风险管理是董事会和高级管理层的责任 2、实施技术是信息技术高级管理层的责任 3、测量和监控风险是经营管理层的责任 管理层在实施一个新的电子银行应用程序之前要 ___________ ]进行适当的战略评估、风险分析和安全审核,以降低实施电子 银行的风险 双SSP每日一题 信 阅读全文
posted @ 2017-12-01 15:18 ye_ming 阅读(206) 评论(0) 推荐(0) 编辑
摘要: 一丶do While在汇编中的表现形式 1.1高级代码: 高级代码很简单,只是一个简单的求1~100的累加 1.2 Debug版本下的汇编表现形式 代码定式很简单 ADDR .....do While逻辑代码块 xxxx 条件 JXX Addr 注意,在 do while中, 汇编代码的语义和高级代 阅读全文
posted @ 2017-12-01 15:11 ye_ming 阅读(1083) 评论(0) 推荐(0) 编辑
摘要: 一丶if else的最简单情况还原(无分支情况) 高级代码: 总共两种情况,我们看下Release中怎么优化的把(注意,优化方式选择O2,速度优先) 汇编代码: 可以看到我们熟悉的代码了.也就是昨天的三目运算. 总共三行汇编代码. 还原套路一样,还是 代入大于0 小于0 还有==0,看看最终结果是什 阅读全文
posted @ 2017-12-01 15:10 ye_ming 阅读(738) 评论(0) 推荐(0) 编辑
摘要: 一丶Switch Case语句在汇编中的第一种表达方式 (引导性跳转表) 第一种表达方式生成条件: case 个数偏少,那么汇编中将会生成引导性的跳转表,会做出 if else的情况(类似,但还是能分辨出来的) 1.高级代码: 2.汇编代码在Debug版本下: 可以看出,生成的跳转表 比较和跳转在一 阅读全文
posted @ 2017-12-01 15:10 ye_ming 阅读(7603) 评论(0) 推荐(0) 编辑
摘要: 一丶编译器优化方式 首先说一下编译器优化方式. 1.常量折叠 2.常量传播 3.复写传播 4.公共表达式 5.去掉不可达到分支 6.顺序代替分支 7.数学变化 8.代码外提 9.减少变量. 10 强度削弱. 优化方式解析 1.常量折叠 常量折叠已经讲过, 就是两个常量相加 8 + 8 ,那么在编译前 阅读全文
posted @ 2017-12-01 15:09 ye_ming 阅读(922) 评论(0) 推荐(0) 编辑
摘要: 除法讲完之后,直接开始讲 % 运算符在汇编中表现形式 首先C的高级代码贴上来. 高级代码: 一丶无符号% 2的幂在汇编中的表现形式 汇编代码: 高级对应语句: 可以看出,当无符号%2的幂的时候,直接用and计算. 其值是 2^n - 1的值 比如我们的number %8,那么and的值则是 8-1, 阅读全文
posted @ 2017-12-01 15:07 ye_ming 阅读(237) 评论(0) 推荐(0) 编辑
摘要: 一丶除法的优化 1.有符号被除数 / 无符号除数的情况下 高级代码为: 汇编中优化的体现形式 相比于昨天,我们发现了的 无符号 / 常量多出了点东西 无符号/常量 如果无符号/常量,那么我们还原的时候 套用公式即可 am >> n a是被除数 m是设 2n/c 等价于 m == 2n/c 无符号的情 阅读全文
posted @ 2017-12-01 15:06 ye_ming 阅读(402) 评论(0) 推荐(0) 编辑
摘要: 除法原理,涉及到了数学公式,而且在汇编中的体现形式也有10几种 这里首先讲解前4中, 抱着问题学习 一丶为什么要熟悉除法的优化,以及除法原理 是这样的,在计算机中,除法运算对应的汇编指令分为 DIV(无符号除法指令) 以及 IDIV(有符号除法指令). 但是,除法指令的执行周期较长效率很低.所以编译 阅读全文
posted @ 2017-12-01 15:05 ye_ming 阅读(1593) 评论(0) 推荐(0) 编辑
摘要: 一丶为什么要熟悉优化方式 熟悉优化方式,可以在看高级代码的时候浮现出汇编代码,以及做逆向对抗的时候,了解汇编代码混淆 优化和混淆是相反的 优化: 指的是汇编代码越少越好,让程序更快的执行 混淆: 一条汇编代码变为多条汇编代码,影响逆向人员的破解能力,但是软件的效率大大降低 二丶加减乘的常见的几种优化 阅读全文
posted @ 2017-12-01 15:03 ye_ming 阅读(402) 评论(0) 推荐(0) 编辑
摘要: 一丶识别各个程序的入口点 入门知识,识别各个应用程序的入口点 (举例识别VC 编译器生成,以及VS编译生成的Debug版本以及Release版本) 1.识别VC6.0 Debug版本 1.1 首先,新建一个VC debug版本的程序,然后F5运行,可以看到栈回溯窗口 1.2 而后通过栈回溯窗口,点击 阅读全文
posted @ 2017-12-01 14:59 ye_ming 阅读(928) 评论(0) 推荐(0) 编辑
摘要: 逆向知识第一讲,IDA的熟悉使用 一丶熟悉IDA,以及手工制作sig文件. IDA,静态分析工具,网上随便找一个即可下载. 首先,我们写一个可执行EXE,最简单的 使用IDA打开. 1.提示使用什么格式打开 因为是PE格式,所以我们选择PE即可.点击OK 2.重新打开一下 如果以前已经打开过这个PE 阅读全文
posted @ 2017-12-01 14:58 ye_ming 阅读(1268) 评论(0) 推荐(0) 编辑