NX机制以及绕过策略
NX机制以及绕过策略一;什么是NX机制NX机制可以使数据区域,堆栈区,堆段等区域不可执行,代码段不可以写入。二;绕过策略因为NX机制的存在,所以如果我们在不可执行的内存位置插入Shellcode依旧是没有办法执行的,那么如果一个不可执行的内存区域出现一个溢出漏洞,我们就没有办法利用了嘛?其实也不尽然。接下来我们就介绍一下ret2libc方法绕过这个问题。2.1;测试环境操作系统:GCC版本:
PE结构——导入表
前言该文章第一部分表述导入表的概念,第二部分讲解导入表的结构,第三部分举例在PE文件当中找到导入表的内容。注意:该文章不涉及延迟加载导入表等内容第一部分在讲解导入表之前,我们先想一想,在我们使用高级语言编写程序的时候是不是有个导入的操作。E.g Python 当中可以使用import 来导入其他库来使用库当中的函数。那么导入表是不是也是这样一个作用呢?答案是肯定的。导入表当中的数据就是指定了P
RVA计算FOA
RVA计算FOA前言该文章描述了RVA和FOA之间的相互转换。第一部分会有基本的概念补充,第二部分讲解如何计算RVA计算FOA。作者:天象独行第一部分一;概念补充RVA是指“相对虚拟内存地址”。FOA是指“文件偏移地址”。详细如下图:首先我来看图中“红色方框”中的内容。它表示PE文件在硬盘中的状态。接下来我们来看看当中的标志“A”。它表示的是文件头到“.rsrc节”的距离。我们将这个距离称为
PE结构_PE头
PE结构_PE头该文章前半部分讲解整个PE的结构。然后我们来解析一段程序字节码来加深PE结构的理解。一;PE结构框架PE结构简单来说就是由一系列有组织的数据的集合组成的。下面我们直接来看下图来了解PE文件的基本结构框架。我们先看图当中右边的部分,我们可以看到整个PE结构由DOS头,PE头,节表(因为翻译的不同,部分文章当中用“块”表示,同一个含义),节内容组成。接下来,我们分别来看看这些结构
80386CPU保护模式下如何设定安全属性
作者:天象独行保护模式下如何设定安全属性呢?我们知道,在保护模式下,80386CPU(注意:这里不一定特指80386CPU,以后出现版本且具备保护模式均可如下来理解。并且下面将用CPU表示)可以具备处理地址空间是否可以被写入,可以被多少优先级代码写入,是不是允许执行等问题。那么,CPU是如何做到这样的呢?我们来换个思路来思考。CPU是如何区分什么地址空间来是否被写入。这里是不是需要一个标识。比
键盘记录功能详解
键盘记录功能详解使用语言:Python2.7使用库:pythoncom,pyhook,win32clipboard,ctypes使用范围:WindowXP以上作者:天象独行一;需求分析:键盘记录功能,在终端运行纪录键击信息且输出。二;问题处理:如何确定记录哪个窗口?怎么记录键盘操作?三;处理方法:系统的每个窗口的句柄是唯一的,可以使用句柄来定位窗口,使用钩子来监控键盘操作。编写钩子子程序来记录键
Python3_编写网络监听工具
前言该文章主要是描写如何使用Python3来编写网络监听工具。文章分为两个部分。首先,先第一部分来解说需要使用的代码功能与使用,为了让不太熟悉Python3语言的朋友能够更好的通过该文章学习。之后会带领各位来整体编写网络监听工具。第一部分:1;sys.argv[]我们想想看,常见使用一款工具的时候是不是打开是这样的格式:“工具名称 [选项] [输入内容]” 那么现在问题来了。我们输入的“[输入内
0X03_拒绝服务_Sockstress_第三章
感谢手电筒老师帮忙看看代码的问题。- TCP三次握手“窗口”?还记得三次我握手吗?(不了解的朋友可以查看我之前写的文章:https://bbs.zkaq.cn/t/4542.html )了解的朋友就明白了,没错它是用来建立链接的。那么“窗口”又是一个什么概念呢?我们先想想这么一个场景:‘我给你一个苹果,你一只手一个拿着。那么,我给你是个苹果。那你可能着急了。我一直收拿不下啊。我一只手只能拿两个
0X02_拒绝服务_SYN Flood_第二章
什么是TCP 三次握手?了解SYN Flood攻击,我们先了解一下TCP三次握手。我们需要计算机之间相互传输的信息之前,首先要确定相互之间网络中的位置,以及确定是否能够链接。我们需要先进行三次握手。三次握手成功之后就表示可以正常相互链接。那么接下来我们来看看这三次握手。建立三次握手流程:客户端首先发送SYN 信息,表示请求链接。服务器收到SYN信息之后,返回SYN ACK 包,表示请求已经收到
0X01_拒绝服务_基本概念_第一章
第一节:什么是Dos攻击?Dos攻击即拒绝服务攻击。通过采用手段来让受攻击的服务器无法提供相应的服务。这里的“手段”可以是通过大量的资源占用来达到使服务器无法提供服务的目的。当然也是可以利用程序的漏洞来达到服务无法使用的目的。这些都属于Dos攻击。第二节:Dos 和 DDos 有什么区别?我们都知道,单个机器计算机去攻击计算机的同时,攻击方一样的会占用大量的资源。而且,在资源对比完全不对称的情况