|
[原创]一种新的多态引擎设计思路,理论,以及实现.
再次被伤害了... 我好像一个问号也没写... 我好像确实也没有提出问题吧?(当然第一帖里的那个不算,那问题也实在不具体.) 现阶段对这个也没什么兴趣了. 至于你讲的虚拟机中的某个瞬时状态, ...算了,不讲这个. "某天某个病毒出来,老板说你一定得把它搞定.然后我发觉我所有的伎俩都用不上" 这个蛮搞笑的. 睡觉吧... |
|
[原创]一种新的多态引擎设计思路,理论,以及实现.
恰巧 高级语言的 一些简单的语句 是个程序都会有.. |
|
|
|
[原创]一种新的多态引擎设计思路,理论,以及实现.
这就是杀毒软件的弱点咯 |
|
[原创]一种新的多态引擎设计思路,理论,以及实现.
不过,我还真的是在这里被"伤害"了 一个AddSection 都给个精华, ExpandSection却什么都没有... 不过也无所谓了, 开始迷python了 |
|
|
|
[原创]一种新的多态引擎设计思路,理论,以及实现.
呵呵. 你讲的这个 "某个瞬间虚拟机的状态本身就能作为一种特征" 我真的不懂. :) 希望如你所讲,我看到的东西很片面. 如果杀毒软件真像我想的那样弱, 那就真郁闷了. |
|
[原创]一种新的多态引擎设计思路,理论,以及实现.
启发虚拟执行获得某程序C.EXE含有同样的序列,则为可疑文件... 如果现在的杀毒软件查毒引擎仅仅如此, 那真的确实太弱了. 也难怪"主动防御"横行. 也难怪, 引擎再强, 也只是循环和递归(个人认为) |
|
[原创]一种新的多态引擎设计思路,理论,以及实现.
在一个大数运算中 加入代码解密部分. 大数运算足够长的时间 . 虚拟启发引擎跑不出大数运算过程. 至于主动防御"特征", ...这不是一个多态引擎所能对付的 |
|
[原创]一种新的多态引擎设计思路,理论,以及实现.
多态解密引擎本身 使用递归与循环进行大数计算. 当每一次计算出的结果满足某一条件时进行一次解密. 整个解密过程 需要在大数计算完成后才完成. 大数计算所花时间 大于三十秒. 再者, 就我现在提出的方案中, 在函数调用过程中随机加入无用参数,或者调动参数顺序都是很简单的事. |
|
[原创]一种新的多态引擎设计思路,理论,以及实现.
1, 你可以看看我拆解的那10个子函数. 你可以找出什么特征来吗? 在asm中, 单独的一个mov eax,ecx是一条指令 是没有特征的 在高级语言中, 同样的, 一个for循环 实际上 就相当于asm中的"一条指令" 既然同样是一条指令, 而且一个"函数"就一条指令? 你如何给他定特征? 这样讲吧. 你能够轻易的在我的代码(某个函数)中定位特征. 结果是, 一大片一大片的误杀. 这跟杀毒软件不会杀你的单一的指令mov eax,ecx一样. 2.这个问题我想是你没有理解我的意思, 当然.也也许是我没有明白你的意思 :) |
|
[原创]一种新的多态引擎设计思路,理论,以及实现.
是这个意思. 子函数没有特征是前提. 传统多态是建立一个代码指定表, 就每个指令而言都是"无特征" & "无用的". 我这里讲的 子函数 是"无特征"的. 解密原本就是一个很简单的函数. 可以很轻易的拆分成无特征的. 所以你讲的" 函数大了就有特征"了 这种问题也不存在, 我现在要做的就是把 函数拆分成无特征的子函数, 然后子函数顺序随机排列. 你可以理解为 把函数拆分成指令. 嗯, 传统多态是把函数拆分成单独的指令, 然后随机空间排序. 我这里则是拆分成无特征的子函数. |
|
[原创]一种新的多态引擎设计思路,理论,以及实现.
怎么杀? 拆解的每一个子函数,就单独的函数而言,是没有病毒特征的. 而如果 用两个子函数的组合来定义病毒特征的话, 函数又是随机分布的, 如何定位? 如果 满足函数A 调用函数B 且函数A,B包含特征. 这样子, 得先早到引擎入口吧? |
|
[原创]一种新的多态引擎设计思路,理论,以及实现.
终于不是零回复了.. |
|
[原创]一种新的多态引擎设计思路,理论,以及实现.
接下来随机排序和修正call调用就好了, 还加上一个函数对齐吧. 原本想把完整实现写出来的, 但是自己突然又懒了,不想写了,最后的实现代码应该也非常简单.所以就不写了. 另外, 对于这种多态引擎的检测思路, 我还真没想到比较好的. p.s. 我仅仅兴趣. 对杀毒软件之类也没什么了解. 如果有代码错误或者完全的认知错误,欢迎指正批评. 如果你有更好的实现方式, 或者检测方法 欢迎交流. (其实我更想知道一些针对此的检测方法) 但愿不要零回复... |
|
[原创]一种新的多态引擎设计思路,理论,以及实现.
DD 函数原始序号,函数大小,调用子函数的偏移,被调用子函数的原始序号,0结束111111111111111 |
|
[原创]一种新的多态引擎设计思路,理论,以及实现.
2.然后将其拆分成n个函数, 我这里n=10.int Encode( PBYTE pInBuffer, int nSize) 11111111111 |
|
|
操作理由
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 }}
勋章
兑换勋章
证书
证书查询 >
能力值