|
[原创]动态调试与静态反汇编合一,运用虚拟机技术创建可逆向运行的调试器
古人60不惑。楼主应该是毕业没多久吧?因为的想法看起来属于学术类的。 本人水平不如楼主,只不过知识面还够广,听说过楼主所言涉及到的方法。 这里只是乱说,如若冒犯,请海涵 1、楼主所言涉及到的工具、方法,不少处于不完备或者不足以实用的状态 人工智能: 课本上人工神经网络的例子“自动识别驾驶汽车”,也只是去年才上路实验。要达到辅助“分析”,距离有点远 虚拟机:硬件仿真部分不会有大问题(bochs属于demo,实用点的话选择VirtualBox+KQEMU),OS仿真部分属于“永远不会完备”,具体原因可以找开发反病毒虚拟机了解一下(两年前腾讯的负责开发虚拟机的人坚持说可用wine做OS仿真,估计现在知道坑了没?)。 编译原理:考虑到开发难度、计算能力要求,开发很有问题。假如楼主真不惑了,请从工程角度评估一下需要多少个开发人员、多久能出开发出demo(可跟踪当前普遍存在的VMP壳的demo程序,考虑加壳的后程序大小10M) 2、楼主所考虑问题的角度,太偏向于逆向,实际从开发角度,逻辑流是很多样的。 楼主如果没看过chrome的message loop posttask或者mac的runloop performselector,可以了解一下,然后给出这种“逻辑流和线程完全脱离”的事件驱动、半事件驱动情况,楼主所给的系统怎么样帮助人识别、整理逻辑? |
|
[讨论]话说大家对程序的算法和数据结构啊啥的有什么想法呢???
常用算法的原理和基础数据结构的驾驭能力,是内功的一部分。 |
|
|
|
[招聘]上海急招高级软件开发工程师,月薪13-18K
技术要求不高 |
|
[招聘]windows客户端高级开发工程师,资深开发
连名字都不敢提的公司,还是算了 |
|
[求助]怎么判断一段二进制数据里是否包含x86机器码?
再说一种更简单直接的处理思路,我没试过,不过应该只对稍微大点的数据块有用 A、对二进制数据提取feature 反汇编二进制数据,提取每种机器码的前缀的出现频度,得到vector a。 需要对指令翻译有些认识,不需要处理所有可能的机器码的前缀,大部分即可。对于X86指令:单字节指令/单字节扩展指令的第一个字节,双字节指令/双字节扩展指令的前两个字节,三字节指令的前3个字节。 判定方法: 对待判定的数据,按照A方法提取得到vector a,把a当成数据,计算信息熵值。对于指令数据(有意义序列)熵值应该偏低,对于非指令数据,熵值应该偏高。 这种方法,对于那些XOR之类的单表替换加密,是直接无视的。 |
|
[求助]怎么判断一段二进制数据里是否包含x86机器码?
具体处理方法有很多,思路想通,其上仅为距离。实际应用有各种实际问题要处理,但写paper应该够了 |
|
[求助]怎么判断一段二进制数据里是否包含x86机器码?
A)提取feature 1、反汇编二进制数据为指令序列 2、提取频度信息。 add指令的比例,mov的比例,间接寻址的比例、寄存器使用频度等等维度的信息。 3、将 2种得到的feature,归一化到0.0~1.0区间,得到一个vector B)采集模板样本集合 1、从现实世界中(各种可执行文件)使用A方法提取样本,得到样本集合R. 2、如果R是简单集合(比如都是从PE入口点提取指令),则可以计算出R的中心点(或者有几个中心点,即编译器特征)。如果R有明显的多个聚簇,则使用自动聚合方法寻找中心点。 3、2中得到的中心点集合,暂称为X,即为模板样本集合 C)判定 对待判断的二进制数据Y,提取feature,得到vector a,计算 a 与 X 中每个点的距离(d1,d2,d3,d4,...dn),如果d1~dn中存在小阀值的数,则认为Y是指令。具体匹配精度,由阀值据诶的那个 |
|
|
|
|
|
[原创]演示代码乱序反掉IDA流程图
必然是你遭殃,不解释,明白的自然明白。 |
|
[求助]奋斗了一天了,来点总结
LS你就误导吧,写壳写这么久,有股票木 |
|
|
|
[求助]各个线程的内核栈是共享的还是分开的?
1、NT内核为保持移植性,并非完全充分利用X86保护模式的机制。所以,不要搞混了。 2、关于你要的细节,参考WRK和NT SRC的如下相关代码即可,花不了1个小时。这里能回答你问题的人基本上都没空或者懒得回答你。 |
|
[求助]各个线程的内核栈是共享的还是分开的?
1、NT内核为保持移植性,并非完全充分利用X86保护模式的机制。所以,不要搞混了。 2、关于你要的细节,参考WRK和NT SRC的如下相关代码即可,花不了1个小时。这里能回答你问题的人基本上都没空或者懒得回答你。 |
|
[分享]修改360最新杀毒软件2.0版[控制3602.0版杀毒软件的木马防火墙模块]
只对牛童说一句:小心怀孕 |
|
[转帖]逆向工程已成世界专利战的秘密武器
3楼,要么你还未成年,要么你就该醒醒了 |
|
|
|
[求助]杀毒软件影响程序启动速度如何克服?
十个回帖三个凑热闹三个装13三个不着题 1、正规安全软件对文件的扫描是有策略的。 进程启动时,不会所有文件都扫。具体哪些文件被扫描,依据软件、策略不同而不同。 2、正规安全软件扫描结果都会有Cache机制。 对于一个进程的多次启动,非特殊情况不会**到每次都去全扫一遍。 3、虽然安全软件会做很多优化来避免不必要的扫描,但还是会有因为其他原因导致影响系统性能。 典型的例子就是卡巴监控,“卡”的时候可能CPU占用很低。 针对“启动”至少以下措施是必定有效的 1、减少动态加载的DLL的数量。一个10MB的EXE和10个1MB的DLL,无论是对于OS还是安全软件,速度差别很大。 2、进程做池子就行了,多对象共用。进程启动关闭是很慢的,每开一个网页就新开一个进程是不合理的。 3、模块加数字签名。 |
操作理由
RANk
{{ user_info.golds == '' ? 0 : user_info.golds }}
雪币
{{ experience }}
课程经验
{{ score }}
学习收益
{{study_duration_fmt}}
学习时长
基本信息
荣誉称号:
{{ honorary_title }}
能力排名:
No.{{ rank_num }}
等 级:
LV{{ rank_lv-100 }}
活跃值:
在线值:
浏览人数:{{ visits }}
最近活跃:{{ last_active_time }}
注册时间:{{ user_info.create_date_jsonfmt }}
勋章
兑换勋章
证书
证书查询 >
能力值