# 性质 # 宽度 固定为 4 字节 # 声明 int* a; int *a;数据类型* a; 数据类型 *a;两者相同 # 赋值 void test(){ int a; a=10; // 完整的 a=(int) 10;}对比void test2(){ int* a; char***** b; a=(int*)10; b=(char*****)20; // 只能用完整的形式} # 运算 # ++-- ++ 或 --,变化的数值取决于去掉一个 * 号后的数据的宽度 void test(){ char* a;...

# 函数 # 定义 类型 函数名 (参数类型 参数名,) { //内容 } # 裸函数 编译器不会自动编译(函数中不会有任何代码),通过__asm 可以写入汇编代码。一定记得写 ret,使函数执行后返回。 void _declspec(naked)/*设置为裸函数*/ hanshu() { __asm//汇编代码指令 { ret//汇编代码 返回 } } # 实操(实现简单的功能) 在这里插入图片描述 void...

# SimpleRev 逆向加密 找到以下几个关键函数就可以开始逆了 值得注意的是查看 v9 的地址发现上大下小 事实上正确的 scr 和 v9 是转换之后字符串的倒序,即’NDCLS’和’hadow’ 另外这种逆向有点难度,主要是 “%26” 的不确定性,所以决定使用爆破解决 # Java 逆向解密 直接放入编辑器 idea 就能看见加密代码 加密原理就是输入的每个字符都加上 64 ^ 0x20 然后再和 KEY 进行比较,相等就是我们要求的 flag 了 # luck_guy 给了一半,f2 没有值,4 和 5 有关于 f2 赋值的部分,有发现 5 是 8 位数操作 顺序应该是 4...

# 前言 本文并不能带你解决这道题目,它是用来记录一些经典的解题思路和重点的 # 经典 - 爆破 iscc 原题,变表 base64,爆破思想 int __cdecl main_0(int argc, const char **argv, const char **envp) { size_t v4; // [esp+DCh] [ebp-E98h] size_t v5; // [esp+E8h] [ebp-E8Ch] char Str2[73]; // [esp+F4h] [ebp-E80h] BYREF char v7[520]; // [esp+13Dh]...

ssh -i key hacker@dojo.pwn.college 打开 输入 定义 设环境变量 ./embryoio_level5</tmp/cupctm ./embryoio_level6>/tmp/pidlgo env -i ./embryoio_level7 # ipython from pwn import * io=process( ["/challenge/embryoio_level17","glfntrfxtf"]) io.interactive() from pwn...

# 0x2. 关卡记录 # 1.level1~3:密码传参 前三关是传密码,第 1 关无密码,第二关运行后输入密码,第 3 关通过参数传密码。 因为密码在提示中写了,认识英语就知道密码了。 # 2.level4,7:环境变量 4 要求新增一个环境变量; 7 要求设置空环境变量; 总而言之都用一条命令: env -i <program> 便可以重新设定环境变量运行程序,7 的要求只需要不加环境变量参数即可,当然 4 也可以使用 export 完成吧。 这些知识在挑战上方的视频中都有讲解,不明白可以看看。 # 3.level5,6:重定向 5 重定向输入; 6...

# base64 加密 # 要求 输入一个字符串,检查该字符串总 ascii 码值。如果值大于 1000 则对该字符串进行 base64 加密输出,否则该字符串与 base64 编码表进行异或输出。记录博客。 # 想法 对于网安这方面接触也有大半年了,base64 是我最常见的加密方式。感觉不会太难。 # 思路 base64:将三个字符的 ASCII 四等分,变成四个六个二进制位的数据,再根据 base64 编码表翻译过来,大体如下: 下面这个是需加密字符不是 3 的倍数时的加密方法。 # 代码 int zhuan(char str[],int number) { char...

最近在进行积极分子培训,写了一些课堂笔记和心得。 # 笔记 # 一、4.7 在中国共产党历史上,曾经形成《关于若干历史问题的决议》和《关于建国以来党的若干历史问题的决议》两个 “历史决议”,党的十九届六中全会审议通过的《中共中央关于党的百年奋斗重大成就和历史经验的决议》是第三个 “历史决议”。科学认识三大 “历史决议” 的制定背景、主要内容、历史价值,有助于我们树立正确的党史观和大历史观,引导大家团结一致向前看。 同时树立正确党史观同样重要,我们当坚持历史唯物主义,立足人民立场,把握党史的主题主线、主流本质,抵制历史虚无主义,坚定历史信念。 #...

# 环境安装 # 第一步下载虚拟机 https://www.vmware.com/ 虚拟机官网 # 第二步下载镜像 https://releases.ubuntu.com/20.04.4/ubuntu-20.04.4-desktop-amd64.iso?_ga=2.90337498.1753593614.1646563933-382193276.1643206315 下载链接,如果不能用或者想安装其它版本的,就删掉后面的去官网找。 # 第三部配置镜像文件 创建新的虚拟机时将镜像文件导入即可 # 第四步更新 gcc sudo apt install build-essential...

# 一、内存中的数据 # 1、存储方式 数据存储在内存中是以字节的单位反向存储的,如:4B5C6D3A, 在内存中存储顺序是 3A 6D 5C 4B (两个十六进制数为一个字节)。 # 2、可识别寻址方式 1、立即数 mov eax,dword ptr ds:[0xAAAA] (读取) mov dword ptr ds:[0xAAAA],eax (写入) lea eax,dword ptr ds:[0xAAAA] (读取地址) lea:得到地址的指令 2、[reg] mov ea,dword ptr ds:[ecx] (读取) mov dword ptr ds:[ecx],eax...