摘要:
CCProxy栈溢出漏洞 一. 漏洞发现 CCProxy是一款代理服务器软件,不仅支持常见的HTTP和SOCKETS代理,而且支持FTP和Telnet协议。我们这次的漏洞就是在Telnet服务当中的。 首先,使用ping指令进行大量输入,判断是否会出现栈溢出的情况,如果出现说明存在栈溢出的漏洞,并且 阅读全文
摘要:
路由器——缓冲区溢出漏洞 一. MIPS架构堆栈 栈操作:MIPS32架构堆栈与x86架构一样,都是向低地址增长的。但在MIPS32架构中没有EBP(栈底指针),进入一个函数时,需要将当前栈指针向下移动n比特,这个大小为n比特的存储空间就是此函数的Stack Frame的存储区域。此后,栈指针便不再 阅读全文
摘要:
浏览器模拟爬虫 一. selenium库介绍 Selenium 通过使用 WebDriver 支持市场上所有主流浏览器的自动化。 WebDriver 是一个 API 和协议,它定义了一个语言中立的接口,用于控制 web 浏览器的行为。 每个浏览器都有一个特定的 WebDriver 实现,称为驱动程序 阅读全文
摘要:
JS逆向——动态页面逆向 一. 步骤 关键点分析 逆向分析信息提取逻辑 模拟执行 二. 实现 1. 关键点分析 找到实现kml导出的按键,发现是通过JS函数实现的,需要针对该函数进行JS代码逆向分析,找到实现的函数逻辑。 2. 逆向分析信息提取逻辑 定位找到exportKML函数 对该函 阅读全文
摘要:
JS逆向—RSA逆向分析 一. 分析思路 抓包分析定位关键字段 逆向分析找到加密函数和参数实现 编写脚本模拟发包实现 二. 具体实现 1. 抓包分析 得到关键字段uid和pwd,其中uid为用户名,pwd为加密编码后的结果 2. 加密代码逆向 搜索pwd得到关键的ajax代码 找到关键函 阅读全文
摘要:
JS逆向——AES加密逆向分析 一. 分析思路 networks抓包分析得到关键发送的报文 ctrl+shift+f查找关键字符所在的的JS文件,实现定位js文件的功能 在js代码当中下断点进行动态调试分析,逐步分析得到加密和处理函数的流程 使用python模拟加密流程得到结果 二. 具体实现 1. 阅读全文
摘要:
Diffie-Hellman密钥交换协议 一. 介绍 密钥交互协议是一种交互式的密码协议,通过该协议可以使没有任何共享密钥的双方,在公开网络上可以通过某些信息来产生一对共享的安全密钥,安全性是基于离散对数问题的难解性。 二. 数学原理 设p是一个大素数,g是p的原根(即数值g mod p, g^2 阅读全文
摘要:
挑战响应机制 一. 介绍 一个实体向另一个实体证明其有密码但是不直接泄露其所拥有的密码证明其身份。挑战者通常会选择一个随机值发送给验证者,验证者使用密钥对挑战值进行加密得到响应发送给挑战者,挑战者再计算响应是否正确判断对方是否真实拥有密钥。 二. 实现 1. 基于对称密钥的挑战响应 要求验证者和声称 阅读全文
摘要:
四种加密模式 一. ECB(Electronic Code Book)/电码本模式 ECB模式简单,针对各个明文分组使用同一套密钥独立进行加密,得到密文,可以实现并行加密,但是可能出现密文重复,安全性差。 二. CBC(Cipher Block Chaining)/密文分组链接模式 CB 阅读全文
摘要:
概述以及数据结构 1. What is heap Heap is a memory region allotted to every program. Unlike stack, heap memory can be dynamically allocated. This means that 阅读全文