1. 订阅相关RSS 和以及添加相关的书签 ,了解最新动态.
2. 记住要贯穿整个知识结构,绝不贴代码,简洁.
3. 视频学习+资料收集整理+代码编写
4. 平时多写及时总结阶段性的工作,多写文章多投稿。到最后阶段,把这些文字有机地组合起来,就是一篇很好的论文,先列提纲,以保证思路的连贯和字数的均衡。
5. 不要罗列所有数据为了保证论文的分量,一定要舍弃那些与主旨关系不大的数据。
6. 跟别人交谈,告诉他们你在做什么,并询问人家在做什么。
7. 打印修改在电脑上直接修改,会遗漏很多错误。让别人指出错误,
8. 查看相关论文,读论文时要牢记一个问题,“我应该如何利用该论文?”“真的像作者宣称的那样么?”“如果..会发生什么?”,维护一份自己感兴趣参考文献的日志, 如果觉得某人的论文有价值,就跑上去,说:“我非常欣赏您的论文”,并提问一个问题. 一旦开始了某个科研项目,建议养成这样的习惯:每隔几个月,就写一篇解释当前工作进展或者学习所得的非正式论文。从你研究笔记中的记载开始,花两天的时间写下来
9.将论文复制数十份,送给你的朋友和那些感兴趣的人, 做好记录和标记复印或打印的文献, 找3-5 篇技术路线和统计方法与你的课题接近的文章,精读。写出论文的草稿。要按照标题、作者、摘要、背景、目的、材料、方法、结果、讨论、致谢、参考文献、图例、图、表、照片和说明的统一格式来写。这样做的好处是从它可以方便地改成任何杂志的格式。重要文献根据重要程度在文件名前加001,002,003 编号,然后按名称排列图标.
10 命名的基本要求
b 表示byte
w 表示word
dw 表示dword
h 表示句柄
lp 表示指针
sz 表示以0结尾的字符串
lpsz 表示指向一个以0结尾字符串的指针
f 表示浮点数
st 表示数据结构
内部子程序前加下划线,局部变量前加@,对子程序说明参数及返回值,实现功能,及注意事项.利用空行划分模块,尽量使用局部变量,另外局部变量的作用范围要注意,进行黑盒的封装,参数精简,对参数要进行必要的合法性检测.申请要释放。打开文件要关闭.在判断语句中将常量写在左边,使用头文件卫士避免重复定义
11 Unicode编码注意点
(1)对于文本字符和串使用通用数据类型(TCHAR和PTSTR);
(2)对于字节,字节指针和数据缓冲区使用显式数据类型如(BYTE和PBYTE)
(3)对字符串使用TEXT宏
(4)应用sizeof(szBuffer)/sizeof(TCHAR) 来表示缓冲区大小,malloc(nCharacters*sizeof(TCHAR))来分配缓冲区大小,malloc是按字节进行内存单元分配的
12 在专业的杂志发表正规的作品
13 4.DVD光盘,可引导式的黑客工具包,分类整理
一.入门基础
1.1准备工作
<1.1.1>相关书籍
A. 琢石成器 : Windows环境下32位汇编语言程序设计 作者:罗云彬
B. 加密与解密 作者:段钢
C. Windows 黑客技术揭秘与攻防
D. 《 Programmgin WDM》 Windows驱动编写
E. 《Windows 程序设计》Charles Petzold
F. 《Windows系统编程》Johnson M.Mhart
G. 《Windows核心编程》Jeffery Richter Christophe Nasarre 强烈推荐
H. 《Windows内核原理与实现》潘爱民
I. 《Windows编程启示录》介绍Windows开发内幕,及设计原因
J. 《Linux内核设计的艺术》新设计团队
K. 最好的书籍MSDN
<1.1.2>gVim使用(黑客必备编辑器)
(1)基本使用hjkl移动 :x保存退出 :wa 保存所有文件x删除 i光标前插入a光标后插入,I行首插入,A行尾插入 dw,de,dd D删除 u-.撤消重做 :w test新建 yy复制当前行 :q!强制退出,w词向前移动,b词向后移动 $行尾 0(零)头 ^第一个非空 gg文件头 G文件尾 :12到12行 [[向前个函数跳转 ]]向后个函数跳转 /查找 :上下键查看历史 :e强制重新加载
,cc 注释一行 ,co不注释一行 ,if 添加一个函数 ctrl+j ,cfu函数注释 ,rc保存编译 ,rr运行
za打开或关闭当前折叠,zM关闭所有折叠,zR打开所有折叠 ,w快速保存 ,bv分割窗口 he hx 16进制转换 g ctrl+G统计字数 set ff? 设置为dos格式 set ff=unix设置为unix格式 v进入行选择
<1.1.3>word2007常用快捷键
ctrl+shift+>改变字号
ctrl+d改变字体
ctrl+shift+c 复制格式
ctrl+shift+v 粘贴格式
ctrl+1单倍行距
alt+ctrl+1应用标题1的格式
1.2 主流的杀毒技术及应对策略
A. 特征码检测,特征串一般不会超过35字节。应对:加壳,修改特征码.
B. 行为检测, 应对:rootkit超级内核后门。
C. 启发式扫描,通常这类病毒检测软件要能够识别并探测许多可疑程序代码指令序列,并按照安全和可疑的等级进行排序,根据病毒可能使用和具备的特点而授以不同的加权值。如果一个程序的加权值的总和超过一个事先定义的阀值,那么病毒检测程序就可以成称发现病毒。为了避免“狼来了”的误报行为,病毒检测程序常把多种可疑操作同时并发的情况定为发现病毒的报警标准。因此启发式扫描技术是一种概率方法。应对:尽量模拟正常程序。
D. 虚拟机技术,虚拟机是一个软件模拟的CPU,可以进行取指令、编译、执行,模拟一段代码在CPU上的运行结果。虚拟机首先从文件中确定并读取病毒入口代码,然后解释执行病毒头部的解密段,最后在执行完的机构中查找病毒的特征码。
E. 云查杀,膨胀技术,分片技术
F. 伪装成系统进程,WriteProcessMemory内存补丁OpenProcess,CreateProcessA,GetWindowsThreadProcessId,FindWindowExA
SMC技术,代码自修改技术
G. 使用远程操作函数,VirtualAllocEx和CreateRemoteThread,VirtualAllocEx函数可以在其他进程的地址空间内申请内存,申请到的内存也位于目标进程的地址空间内,使用WriteProcessMemory函数配合就可以在目标进程地址空间中”造出代码和数据”,(注意要拥有PROCESS_VM_OPERATION权限).CreateRemoteThread和CreateThread函数类似,也必须拥有PROCESS_CREATE_THREAD权限.
H. 系统监控
<1>文件监控 FindFirstChangeNotifycation,重命名文件,新建,删除,属性修改,文件大小改变,最后修改时间,安全描述符改变
Windows NT平台,
ReadDirectoryChangesW()效率比较低,如果很短时间内发生大量改变,将会丢失改变,初次调用该函数,系统会分配缓存存储改变,若变动过多,将会溢出
<2>注册表监控
RegNotifyChangeKeyValue函数,只能在事件发生后才能发出通知.
<3>进程监控
Shell钩子无法拦截WinExec()或CreateProcess函数,shell钩子是一个ATL COM 组件,新建VC工程要注意
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!