Software-Security-Learning
在学习Software安全的过程中整合的一些资料。 该repo会不断更新,最近更新日期为:2018/02/17。
同步更新于: chybeta: Software-Security-Learning (带目录)
更新小记:
Bin Securiy
Tools
- pharos: Automated static analysis tools for binary programs
- Angr:The next-generation binary analysis platform
- Angr:一个具有动态符号执行和静态分析的二进制分析工具
- angr初探
- 符号执行:利用Angr进行简单CTF逆向分析
- Vuzzer自动漏洞挖掘工具简单分析附使用介绍
- PEDA - Python Exploit Development Assistance for GDB
- pwntools - CTF framework and exploit development library
Course
- Modern Binary Exploitation
- Linux (x86) Exploit Development Series
- liveoverflow: Binary Hacking Course
- Lots of Tutorials
Hack The Virtual Memory
- Hack The Virtual Memory: C strings & /proc
- Hack The Virtual Memory: Python bytes
- Hack the Virtual Memory: drawing the VM diagram
- Hack the Virtual Memory: malloc, the heap & the program break
Exploit writing tutorial
- Stack Based Overflows
- Stack Based Overflows – jumping to shellcode
- SEH Based Exploits
- SEH Based Exploits – just another example
- From Exploit to Metasploit – The basics
- How debugger modules & plugins can speed up basic exploit development
- Bypassing Stack Cookies, SafeSeh, SEHOP, HW DEP and ASLR
- Unicode – from 0x00410041 to calc
- Win32 Egg Hunting
- Introduction to Win32 shellcoding
- Chaining DEP with ROP
- Heap Spraying Demystified
基础知识
ROP
一步一步ROP
基本ROP
- Intro to ROP: ROP Emporium — Split
- ROP Emporium
- ropasaurusrex: a primer on return-oriented programming2
- ROP技术入门教程
- 二进制漏洞利用中的ROP技术研究与实例分析
- 现代栈溢出利用技术基础:ROP
- 通过ELF动态装载构造ROP链
- Swing: 基础栈溢出复习 二 之 ROP
BROP
SROP
Return-to-dl-resolve
栈漏洞
- 手把手教你栈溢出从入门到放弃(上)
- 手把手教你栈溢出从入门到放弃(下)
- Hcamael: PWN学习总结之基础栈溢出
- Hcamael: PWN学习总结之基础栈溢出2
- Swing: 基础栈溢出复习 之基础
- ARM栈溢出攻击实践:从虚拟环境搭建到ROP利用
- 64-bit Linux stack smashing tutorial: Part 1
- 64-bit Linux stack smashing tutorial: Part 2
- 64-bit Linux stack smashing tutorial: Part 3
- Offset2lib: bypassing full ASLR on 64bit Linu
- return2libc学习笔记
堆漏洞
堆相关知识
- PWN之堆内存管理
- Linux堆内存管理深入分析(上)
- Linux堆内存管理深入分析(下)
- Windows Exploit开发系列教程——堆喷射(一)
- Windows Exploit开发系列教程——堆喷射(二)
- Libc堆管理机制及漏洞利用技术 (一)
- Notes About Heap Overflow Under Linux
- 如何理解堆和堆溢出漏洞的利用?
- Have fun with glibc内存管理
- 内存映射mmap
- glibc malloc学习笔记之fastbin
- malloc.c源码阅读之__libc_free
- Malloc碎碎念
- glibc内存分配与回收过程图解
- 理解 glibc malloc
堆利用技术
- how2heap总结-上
- how2heap总结-下
- 溢出科普:heap overflow&溢出保护和绕过
- 现代化的堆相关漏洞利用技巧
- 从一字节溢出到任意代码执行-Linux下堆漏洞利用
- Heap overflow using unlink
- 堆溢出的unlink利用方法
- Linux堆溢出漏洞利用之unlink
- 浅析Linux堆溢出之fastbin
- Linux堆溢出之Fastbin Attack实例详解
- unsorted bin attack分析
- Double Free浅析
- Understanding the heap by breaking it
- An Introduction to Use After Free Vulnerabilities
- Use After Free漏洞浅析
- Linux堆漏洞之Use after free实例
- 堆之House of Spirit
- Dance In Heap(一):浅析堆的申请释放及相应保护机制
- Dance In Heap(二):一些堆利用的方法(上)
- Dance In Heap(三):一些堆利用的方法(中)
- Dance In Heap(四):一些堆利用的方法(下)
- Glibc Adventures:The Forgotten Chunks
格式化字符串漏洞
- Exploiting Format String Vulnerabilities
- 二进制漏洞之——邪恶的printf
- 漏洞挖掘基础之格式化字符串
- 格式化字符串漏洞利用小结(一)
- 格式化字符串漏洞利用小结(二)
- Linux下的格式化字符串漏洞利用姿势
- Linux系统下格式化字符串利用研究
- Advances in format string exploitation
- Exploiting Sudo format string vunerability
其余漏洞
FSP溢出
- Head First FILE Stream Pointer Overflow
- abusing the FILE structure
- File Stream Pointer Overflows Paper.
- 溢出利用FILE结构体
整数溢出
保护绕过
Cannary绕过
内核
- Some-Kernel-Fuzzing-Paper
- [Introduction to Windows Kernel Driver Exploitation (Pt. 1) - Environment Setup](Introduction to Windows Kernel Driver Exploitation (Pt. 1) - Environment Setup)
- Introduction to Windows Kernel Driver Exploitation (Pt. 2) - Stack Buffer Overflow to System Shell
- HackSysExtremeVulnerableDriver
- Starting with Windows Kernel Exploitation – part 1 – setting up the lab
- Starting with Windows Kernel Exploitation – part 2 – getting familiar with HackSys Extreme Vulnerable Driver
- 利用WinDbg本地内核调试器攻陷 Windows 内核
- Windows内核利用之旅:熟悉HEVD(附视频演示)
- Windows 内核攻击:栈溢出
- Linux 内核漏洞利用教程(一):环境配置
- Linux 内核漏洞利用教程(二):两个Demo
- Linux 内核漏洞利用教程(三):实践 CSAW CTF 题目
- Linux内核ROP姿势详解(一)
- Linux内核ROP姿势详解(二)
虚拟机逃逸
ARM
- ARM 汇编基础速成1:ARM汇编以及汇编语言基础介绍
- ARM 汇编基础速成2:ARM汇编中的数据类型
- ARM 汇编基础速成3:ARM模式与THUMB模式
- ARM 汇编基础速成4:ARM汇编内存访问相关指令
- ARM 汇编基础速成5:连续存取
- ARM 汇编基础速成6:条件执行与分支
- ARM 汇编基础速成7:栈与函数
Lua
进程注入
符号执行
漏洞挖掘
CTF中的pwn
入门
技巧
总结
WP
Android Security
Exercise
Skill
- Android应用逆向工程
- 初探 Android SO 开发
- Android App漏洞学习(一)
- Android App漏洞学习(二)
- WIKI: Android
- Android组件安全
- 通过 WebView 攻击 Android 应用
Tool
浏览器安全
- 浏览器漏洞
- 浅谈多浏览器的自动化测试
- 浏览器漏洞挖掘思路
- IE漏洞攻防编年简史
- IE浏览器漏洞综合利用技术:UAF利用技术的发展
- IE浏览器漏洞综合利用技术:堆喷射技术
- cure53-browser-sec-whitepaper
- X41-Browser-Security-White-Paper
- 纯干货:微软漏洞**第一人黄正——如何用正确姿势挖掘浏览器漏洞(附完整 PPT)|硬创公开课
IOS/OSX Securiy
IOS
Exercise
Skill
- IosHackStudy
- Papers, Slides and Thesis Archive : iOS
- ios-wiki: iOS Security
- apple官方文档:iOS Security
- iOS安全系列汇总
- 浅谈iOS应用安全自动化审计
- iOS安全审计入门
- iOS内核漏洞挖掘–fuzz&代码审计