一次性付费进群,长期免费索取教程,没有付费教程。
教程列表见微信公众号底部菜单
进微信群回复公众号:微信群;QQ群:460500587
微信公众号:计算机与网络安全
ID:Computer-network
▼
虽然应用程序处在操作系统的用户态,而驱动程序处在操作系统的内核态,但是它们之间是必须通信的,应用程序的执行都是依赖于操作系统内核的。
▼
System Service Descriptor Table(系统服务描述表)的作用是把用户层的Win32 API和内核层的API建立一个关联。
▼
枚举进程不能在用户态下进行,需要到内核态下进行,这样就必须使用驱动程序来完成。先用WinDbg完成一次手动的枚举过程,再通过代码来完成。
▼
驱动都是要加载入内核的,我们要做的很多事情也需要在内核下完成,要想在内核中实现功能就需要编写驱动模块。
▼
壳是一种较为特殊的软件。壳分为两类,一类是压缩壳,另一类是加密壳。当然,还有介于两者之间的混合壳。
▼
写一个程序来简单地解析一下引导区。在整个过程中,编写程序不是难点,难点在于引导区的各个数据结构和各结构之间的数据关系。
▼
通过一个简单的例子来介绍如何监控某目录及目录下文件的变动情况。
▼
通过U盘来传播 病毒 通常是使用 操作系统 的自动运行功能,并配合U盘下的Autorun.inf文件来实现的。如果让 操作系统 不自动运行移动磁盘,或者保证移动磁盘下不存在Autorun.inf文件,那样通过U盘感染 病毒 的几率就小很多了。▼
专杀工具是针对某一个或某一类的 病毒 、 木马 或蠕虫等恶意软件开发的工具。专业的杀毒软件需要专业的反 病毒 公司来进行开发,而专杀工具可能是由反 病毒 公司开发,也可能是由个人来进行开发。▼
有一种流行的防 病毒 软件被称作HIPS,中文名字叫做主机防御系统,比如EQ。该软件可以在进程创建时、有进程对注册表进行写入时或有驱动被加载时,给用户予以选择,选择是否拦截进程的创建、是否拦截注册表的写入、是否拦截驱动的加载等功能。▼
隐藏进程的方法是把要在进程中完成的功能放在DLL文件中完成,然后将DLL文件注入到其他进程当中,从而达到隐藏进程的目的。现在要做的是隐藏进程中的DLL文件,当把DLL文件注入到远程进程后,可以将DLL也隐藏掉。 操作系统 在进程中维护着一个叫做TEB的结构体,这个结构体是线程环境块。▼
钩子函数是Windows消息处理机制的一部分,通过设置“钩子”,应用程序可以在系统级对所有消息、事件进行过滤,访问在正常情况下无法访问的消息。钩子的本质是一段用以处理系统消息的程序,通过系统调用,把它挂入系统。▼
在可执行文件中使用其他DLL可执行文件的代码或数据时称为导入,或者称为输入。当 PE文件 被加载时,Windows加载器会定位所有的导入的函数或数据。这个定位是需要借助于导入表来完成的。导入表中存放了使用的DLL的模块名称,及导入的函数。▼
介绍了Inline HOOK的原理,并通过两个例子学习了Inline Hook的用法。一个例子是对本进程的HOOK,另一个例子是对其他进程的HOOK。在对其他进程的HOOK中,演示了如何HOOK CreateProcessW()函数,并且从中学习了如何拦截应用程序进程被创建的过程,又强调了对函数栈平衡的重要性。▼
用调试API针对CrackMe来编写一个显示密码的程序。
▼
在Windows中有这么一些API函数是专门用来进行调试的,这些函数被称作为Debug API,或者是调试API。利用这些函数可以进行调试器的开发,调试器通过创建有调试关系的父子进程来进行调试,被调试进程的底层信息、即时的寄存器、指令等信息都可以被获取,进而用来分析。
▼
补丁是指对于大型软件系统(如微软 操作系统 )在使用过程中暴露的问题(一般由 黑客 或 病毒 设计者发现)而发布的解决问题的小程序。人编写程序不可能十全十美的,所以软件也免不了会出现BUG,而补丁是专门修复这些BUG的,因为原来发布的软件存在缺陷,发现之后另外编制一个小程序使其完善,这种小程序俗称补丁。补丁是由软件的原来作者制作的,可以访问网站下载补丁。▼
调试API是系统留给用户进行程序调试的接口,其功能非常强大。
▼
添加节区在很多场合都会用到,比如在 加壳 中,在 免杀 中都会经常使用到对 PE文件 添加一个节区。添加一个节区的方法有4个步骤,第1个步骤是在节表的最后面添加一个IMAGE_SECTION_HEADER,第2个步骤是更新IMAGE_FILE_HEADER中的NumberOfSections字段,第3步是更新IMAGE_OPTIONAL_HEADER中的SizeOfImage字段,最后一步则是添加文件的数据。当然了,前3个步骤是没有先后顺序的,但是最后一个步骤一定要明确如何改变。▼
PE文件 有3种地址,分别是VA(虚拟地址)、RVA(相对虚拟地址)和FileOffset(文件偏移地址)。3种地址的转换如果始终使用手动来计算那是非常累的,因此通常的做法是借助工具来完成。可以使用LordPE来计算这3种地址的转换,现在来编写一个对这3种地址进行转换的工具。▼
在 PE文件结构 中大多用的都是偏移地址,因此,只要偏移地址和实际的数据相符,那么 PE文件格式 有可能是嵌套的。也就是说 PE文件 是可以变形的,只要保证其偏移地址和 PE文件 格式的结构基本就没多大问题。▼
写PE查看器并不是件复杂的事情,只要按照PE结构一步一步地解析就可以了。简单地解析其中几个字段内容,显示一下节表的信息。
▼
关于远程线程的知识,我们从3个例子来学习,一个是DLL的注入,一个是DLL的卸载,一个是不依赖DLL的注入代码,3个例子的原理是一样的。▼
DLL(Dynamic Link Library,动态链接库)是一个可以被其他应用程序调用的程序模块,其中封装了可以被调用的资源和函数。动态链接库的扩展名一般是.DLL,不过有时也可能是其他的。DLL文件也属于可执行文件,只不过它是依附于EXE文件来被执行的。一个DLL文件可以被多个EXE文件加载。▼
进程(process)和线程(thread)是操作系统的基本概念,但是它们比较抽象。
▼
服务是一种在 操作系统 启动时就启动的进程。在 操作系统 启动时有两种程序会一起随着系统启动,一种是普通的Win32程序,另一种是驱动程序。这里讨论的并不是要如何编写一个系统的服务,而是编写一个如何可以显示出这些随系统启动而启动的服务项。▼
注册表是 Windows 操作系统的一个重要的数据库,里面记录了系统几乎所有的信息。当然,由于注册表的功能非常强大,因此,注册表对于 病毒 、 木马 来说是非常有利用价值的地方。而对于反 病毒 软件来说,注册表是其需要加强守卫的地方。注册表,是一个正义与邪恶的必争之处。▼
每当我们打开U盘时,看到有一个AutoRun.inf文件时都会不由地倒吸口凉气,“该死!又中 病毒 了!”。是的,有一种 病毒 程序通过AutoRun.inf文件使其自动运行起来,想必这不用做过多的介绍每一位都非常清楚。网上有很多免疫工具,现在一些修改版的 操作系统 里面也会提供这样一个免疫的小工具。它免疫的原理是建立一个不被删除的文件AutoRun.inf文件夹,以防止 病毒 生成一个运行 病毒 的AutoRun.inf。▼
对于操作任何文件,我们最先的操作是对文件的打开,操作结束时为了释放资源要进行关闭。我们依次学习如何使用这些API函数,然后完成一个简单的小例子。从“文件操作”开始,我们要接触MFC方面的编程,但不会很难,都是一些对界面和控件之类的使用。▼
C/S模式的 木马 的工作方式和网上聊天的工作方式没什么差别,都是基于 TCP/IP协议 的通信,都是在传递信息。不同的是, 木马 的客户端向服务器端发送的内容是控制命令,服务器端收到控制命令执行相应的功能,并将执行结果反馈给客户端,这就是 远程控制 。如果客户端加一些隐藏进程,复制自身到系统目录,然后自动启动……那么服务端就是一个 木马 了。▼
通信模型、Winsock、Winsock的相关函数、字节顺序。
ID:Computer-network