- 博客(35)
- 收藏
- 关注
原创 读《曾国藩》笔记2--慈不掌兵
曾国藩衡州练兵,适逢江西战时告急,骆秉章请曾国藩拨两营勇丁前往江西应援,分别是罗泽南的泽字营和金松龄的龄字营,战况如下:杀敌数千,收复安福,解吉安之围,泽字营在南昌附近中埋伏,金松龄在最危急的时候,见死不救,大败。败不相救,军队大忌,曾事后砍了金松龄,以严明军纪。正所谓慈不掌兵,义不理财,曾国藩下令杀人的时候罗泽南和曾国葆出来求情了,大家万万没有想到,这曾大人竟然要杀自己人,且没有一点犹豫,不为任何人所动,终究还是干脆利落的军法处斩了金松龄。从此以后,湘军必纪律严明,胜不相争、败必相救,为日后湘军的壮大发
2021-02-18 19:28:26
532
4
原创 密码学习记录-任务一
任务一1.古典密码1.1编码方法种类置换和代(替)换把明文中的字母重新排列,字母本身不变,但其位置改变了,这样编成的密码称为置换密码。最简单的置换密码是把明文中的字母顺序倒过来,然后截成固定长度的字母组作为密文。代换密码则是将明文中的字符替代成其他字符。1.2置换密码列置换加密:将明文按固定长m分组,即每行m个字母,在密钥控制下按某一顺序交换列,最后按列优先的顺序依次读出,即产生了密文。解密:逆过程。周期置换同列置换,不同是加、解密时,在列交换后是按行优先的顺序向下进行。举例:列置换
2021-02-18 18:45:40
685
2
原创 读《曾国藩》笔记1--涤旧新生
春节,得二十几日假期,与其把时间浪费在手机的碎片化阅读上,不如静下心来读一本好书,本来想读《平凡的世界》,后来结合自己最近发生的一些事情,还是该再拜读曾文正公的传记为好,以砥砺前行,激励我心。作者唐浩明以历史小说的文学形式非常生动的展示了曾国藩一生中最重要的时期,抗击太平天国。才读了一百多页,便感觉收获良多,体会甚多。曾国藩号涤生,涤者,取涤其旧染之污也;生者,取明袁了凡之言,“从前种种,譬如昨日死;今后种种,譬如今日生”也,谁人不想涤旧而新生,然能真正做到从前种种昨日死,今后种种今日生的人少之愈少,自
2021-02-17 22:06:49
740
5
原创 加密与解密 charter 4 学习记录
0x01 charter 44.1.1 start up functionGetStartupInfo --> main --> exit4.1.2 functionreferencestack ®ister calling conventionc ďźšright to left4.1.3 data struct1.local variables2.array.data [407030h + eax ]​ b
2021-02-09 19:07:17
461
原创 和老朋友的一次谈话
古人云,听君一席话,胜读十年书。寒假,某日清晨,尚处于睡眠状态,我倍感荣幸,初中的一位老同学兼为数不多的好友来电,约我一起吃个早茶。一年未见,当然感到很亲切,感慨时间过得真快之余,开始谈人生,谈理想,谈哲理。期间,我向老友倾述,自己近日有一个困扰,不得解。什么困扰呢?当前有两份工作摆在我的面前,一份工作在遥远的大西北,除了环境差点以外,其他的都是我比较满意的,另一份工作,在环境较好的内地地方,但未必可以实现我的抱负,而且女朋友也在内地,我难以选择,当然,也未必可以选择。他是怎么回答的呢?那个工作可以
2021-02-09 19:06:45
181
2
原创 pwn 进阶(3)
0x01 Stack migrationleave;ret;leavemov esp,ebppop ebpretpop eipif we deploy stackstackbssfake_ebp1esp–>fake ebp1 mem is here/ fake_ebp2readfake_funleave_retebp–>fake_ebp2 mem is herecontrol eip return to read fake_e
2021-02-07 17:25:18
223
原创 pwn 进阶(2)
pwn improve(2)0x01 plan1(produce vulnerable program )my important jop is to Debugger。pwn1(20200315)this topic is anther lgd,the topic i produced before。[key point]:1.heap overlap2.seccomp3.rop4.shellcodewp:there is a heap overlap in the add fun
2021-02-07 17:24:25
436
原创 pwn 进阶(1)
pwn 进阶(1)0x01 XCTF 高校战’疫’分享赛复盘easyheapfree后指针残留,可以溢出,最后要造成一个任意写from pwn import*context.log_level = "debug"#p = process("./easyheap")p = remote("121.36.209.145",9997)elf = ELF("./libc.so.6")def new(size,content,test): p.recvuntil("choice:")
2021-02-07 17:23:26
974
原创 强网杯 stkof 拟态防御¬_the_same_3dsctf_2016
强网杯 stkof 拟态防御之前强网杯的一道简单题,栈溢出,俩程序,静态编译ropchain 一梭子getshell,因为是拟态防御,所以必须一个payload 同时打俩程序,熟悉rop链构造,就很愉快,否则就比较尴尬。exp:from pwn import *#p=remotep=process("./pwn2")stp.recvuntil('try to pwn it?\n')rop32=''rop32+=struct.pack('<I', 0x0806e9cb) # por.
2021-02-07 17:21:27
303
原创 学习一道arm题目
初试一道armsigned int main_0(){ char buf; // [sp+0h] [bp-24h] sub_10538(); puts("your name:\n"); read(0, &buf, 0x100u); printf("hello %s\n", &buf); return 1;}栈溢出,开启NX,其他啥也没有,ret2libc参数传递r0-r4找几个gadget 传参和调用pop_r3_pc = 0x000103a4
2021-02-07 17:19:12
222
原创 虎符ctf and buuctf 几道题
虎符ctf 复现securebox先看一下漏洞函数 size = sub_DC7(); // size 本来是int64的 if ( size > 0x100 && (unsigned int)size <= 0xFFF )// 这里强制转换为32位的了 { qword_202060[v2] = malloc(0x28uLL); *((_QWORD *)qword_202060[
2021-02-07 17:18:15
290
原创 几道buuctf pwn wp
buuctf wptry_your_ncfrom pwn import *from sys import *debug=1if debug: p=remote("node3.buuoj.cn",26062)else: p=process("xxx")p.interactive()pwn1_sctf_2016C++ 写的,害,输入I, 会转换为you,所以有溢出啊,还有后面函数from pwn import *from sys import *debug=1c
2021-02-07 17:16:46
413
原创 几道pwn题复现
不记得是什么时候打的比赛,自己搭的博客崩了,搬来csdn记录一下虎符CTF 复现0x01任意地址写from pwn import*from sys import*p=remote('39.97.210.182',10055)#p=remote()39.97.210.182 10055#p=process("./chall")elf=ELF('chall')#libc = ELF('libc6_2.27-3ubuntu1_amd64.so')#libc = ELF('./libc-2.23
2021-02-07 17:15:43
535
原创 路由器固件逆向&&AFL 入门
路由器固件逆向&&AFL 入门0x01 提权固件内容binwalkbinwalk -e xxxx提权文件系统ubireader_extract_files xxx 会生成一个名叫 ubifs-root 的文件夹里面还存放这一个文件,这个文件就是ubi镜像的最终文件系统。firmware-mod-kit 安装sudo yum install git build-essential zlib1g-dev liblzma-dev python-magic这里我只装了liblz
2021-02-07 17:11:05
2682
原创 星火-二进制漏洞利用培训
PWN前言信安出征,寸草不生。世界万物皆可pwn,除非你内力不够深厚,pwn不是你成为武林高手的唯一路径,但绝对是你闯荡江湖的武林秘籍。ctf pwn只是一个起点,希望对pwn 感兴趣的童鞋不要只局限于pwn,因为你学习pwn的时候,也许你觉得这是玄学,建议积极的探索未知的领域,找到那些可以让你感兴趣的地方,否则,你永远达不到pwn万物的高度,应该要记住,我们的征途是星辰大海。仰望星空,脚踏实地,狭义的pwn是指挖掘二进制程序的漏洞,编写漏洞利用脚本破解程序,拿到主机的权限。需要了解二进制程序的特
2021-02-04 11:38:23
539
2
原创 加密解密学习纪录1
学习纪录动态分析技术实践第一个小程序int __stdcall WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd){ ::hInstance = hInstance; DialogBoxParamA(hInstance, (LPCSTR)0x65, 0, DialogFunc, 0); return 0;}重要代码 v5 = GetDlgItemTextA(hWn
2020-06-14 09:06:12
147
原创 加密解密学习纪录0
第一个窗口函数#if defined(UNICODE) && !defined(_UNICODE) #define _UNICODE#elif defined(_UNICODE) && !defined(UNICODE) #define UNICODE#endif#include <tchar.h>#include <windows.h>#include <stdlib.h>#include <stri
2020-06-14 09:03:13
192
原创 2019XCTF攻防世界之萌新入坑(echo)
ret2resolveexpimport sysimport roputilsfrom pwn import *context.log_level = 'debug'#r = process("./pwn")p = remote("111.198.29.45",37888)rop = roputils.ROP('./echo')addr_bss = rop.sect...
2019-04-25 08:55:37
571
原创 Return-to-dl-resolve
Return-to-dl-resolve是CTF中的高级rop技巧2019国赛线上 baby_pwnexpimport sysimport roputilsfrom pwn import *context.log_level = 'debug'#r = process("./pwn")p = process("./babypwn")rop = ropu...
2019-04-25 08:46:32
247
原创 heap之double free
susctftache_pwn利用double free 控制全局变量,泄露puts函数地址,查出libc库,利用malloc_hook写入one_gadget执行。为了加深理解,画了一个图malloc_hook 钩子利用同理。expfrom pwn import*p = remote("211.65.197.117",10007)a = ELF("./libc6_2.2...
2019-04-14 23:35:28
582
原创 2019西湖论剑writeup
pwn0x01 story保护开启了NX,canary题目分析明显的格式化字符漏洞,用来泄露canary的值,直观思路v1控制写入s的数量,可以控制v1使s溢出,控制ret返回puts,泄露某个函数地址,计算出libc基址,算出system,str_bin_sh。再次溢出,getshell。# -*- coding:utf-8 -*- from pwn import *...
2019-04-07 20:26:55
1885
原创 2019XCTF攻防世界之萌新入坑
XCTF攻防世界的题质量确实很高,还有解题思路和writeup,真是棒极了。萌新入坑0x01 babystack保护机制题目开启了nx,canary题目代码思路分析①这道题主要是绕过canary,然后栈溢出getshell。②经分析,read函数读入到s处,可以溢出。③put函数输出s的内容,遇到’\x00’才停止,即使字符串中存在’\n’,也会继续输出,用...
2019-04-06 23:57:56
1689
原创 格式化字符串漏洞利用之泄露canary
两道格式化字符串漏洞利用入门题,绕过canary的一种姿势,不知道写的对不对,请大家多指正。0x01 Canary保护开启了NX和canary。题目分析有个getshell函数,vuln函数里面明显的栈溢出和格式化字符串漏洞,所以可以利用printf函数泄露出canary的值,然后利用栈溢出填充canary,控制返回指针执行getshell函数。栈从栈的情况看,var_8...
2019-03-31 22:27:31
1590
原创 2018东南大学 SUS 十一欢乐赛 pwn解题记录
pwn2plus直接栈溢出覆盖调用callsystem函数。expfrom pwn import *#p = remote("47.100.40.190" , 10007)p=process("./pwn2")elf = ELF("./pwn2")callsystem=0x400596pay = "a"*0x80+"a"*8pay +=p64(callsystem)+p64(0...
2019-03-21 16:05:55
330
原创 babysc和handsomeariis
babysc从汇编看,逻辑就是read读入一串数据到buf,然后一个循环函数,函数控制变量i加1和buf数据进行异或,然后将异或后的数据给rdx执行,所以,直接注入shellcode,shellcode需要先异或一次再注入。exp如下:from pwn import *cn = process('./babysc')offset="\x6a\x3b\x58\x99\x48\xbb\x2...
2019-03-19 21:02:57
216
原创 tuma五道入门pwn题解析
0x01 pwn1只有v5==-559869752 成立,就能输出flag,查看v5位置,直接覆盖。expfrom pwn import *context(os='linux', arch='i386', log_level='debug')p = process('./pwn1.dms')p.recvuntil('What... is your name?\n')p.sendl...
2019-03-12 19:51:16
886
原创 解析两道pwn题shellcode利用
两道题都是shellcode直接利用,简单记录解题的过程。runit逻辑不难,使用mmap()分配一块内存,然后通过read函数写入数据到这个内存块,接下来就直接执行我们输入的数据,所以可以直接构造shellcode注入到该内存块,完事。exp...
2019-03-12 15:49:10
2111
原创 pwn栈溢出之dltest(DynELF和libcSearcher利用)
栈溢出dltest解题步骤思路分析:观察源码,是个栈溢出。没有system函数,也没有给libc库,但有read函数和write函数。可以借助DynELF泄露函数地址,定为system地址,然后借助read函数写入“/bin/sh”,并调用执行system(“/bin/sh”)0x01...
2019-02-15 17:34:06
1294
原创 pwn学习系列--任务4 pwn200
栈溢出之pwn200解题步骤主要涉及到Ret2libc–修改返回地址,让其指向内存中已有的某个函数,还涉及到简单的rop( Return Oriented Programming )构造思路分析:有read函数,变量buf大小为0x68,read可写入0x100,可知有栈溢出。题目中只给出system函数,没有给出“/bin/sh”,所以要自己通过read函数写入“/bin/sh”,然后返回调...
2019-02-11 21:11:02
926
原创 pwn学习系列--任务3 pwn100
pwn100解题步骤1.先将pwn100 文件copy到虚拟机里,查看一波,文件是32位的2.ida里f5 查看main函数查看buf大小64+4,但read可向buf读入0x100,可看出这是个栈溢出3.找了老久,我勒个去,没有system函数,身为小白的我,一直纠结这是要干啥,我该怎么办。。。但有getflag函数,额----,flag.txt自己弄,flag文件记得写点东西,不...
2019-01-31 20:39:33
653
原创 pwn学习系列--任务2
1.熟练掌握python字符串处理2.至少熟练掌握zio或pwntools其中一种库的用法这里只学习pwntools的用法,开始安装pwntools时真是崩溃了,刚装的ubuntu (yilianmengbi),后来在大佬的指导下终于成功安装。第一步,先更新源sudo apt-get update第二步,装pipsudo apt install python-pip第三步,安装...
2019-01-31 20:03:23
341
原创 Python入门之旅--任务系列(一)
Python入门之旅–任务系列(一)这篇文章是学习python基础知识的,仅仅是任务一而已,以后会继续跟进。系统是Linux的,下面开启Python入门之旅!知识点1.python解释器1.声明变量,使用type()函数查看变量的类型2.help()3.str()和dir()4.len()5.split()6…append()和.remove()知识点2.模块简单介绍...
2018-12-22 22:10:19
229
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人