01 2023 档案
摘要:win32 | 使用SetWindowPos置顶窗口 写了个置顶窗口的命令行小工具。 很舒服,唯一不好的是有的时候通过窗口名找不到窗口,这个就比较麻烦哈哈哈哈。 // this file is gbk encoded // author: Mz1 #include <windows.h> #incl
阅读全文
摘要:逆向原理 | SetWindowsHookEx 原理探究与实验 SetWindowsHook其实是在windows逆向中非常重要的一个api与之对应的是UnhookWindowsHookEx,用于卸载钩子。 但是这个api的机制其实是比较复杂的,之前应该没有记录过,这次准备好好记录一下。 同时之后还
阅读全文
摘要:re | [NPUCTF2020]EzReverse x64 linux 花指令 直接去花然后调整栈平衡f5,目测比较单纯: __int64 __fastcall main(__int64 a1, char **a2, char **a3) { __int64 *v3; // rbx char v4
阅读全文
摘要:python | base64隐写 闲得无聊写了一个base64隐写库。 叫b64steg 安装直接pip install b64steg即可。 项目地址: https://github.com/Mz1z/b64steg
阅读全文
摘要:re | [RCTF2019]asm 简单file一下: 推测是risc-v64位,去网上找逆向脚本: 这个反汇编器是可以用的: https://github.com/riscv/riscv-gnu-toolchain 或者用下面这个idaproc可以打开,但是效果不太好。 https://gith
阅读全文
摘要:re | [SUCTF2018]HelloPython pyc逆向,解出来一坨翔: 出题人所说应该是使用onelinerizer进行加密的。 (lambda __operator, __print, __g, __contextlib, __y: [ (lambda __mod: [ [ [ (la
阅读全文
摘要:re | [羊城杯 2020]babyre linux x64 main函数很单纯,藏了一个smc,直接动调dump。 signed __int64 __fastcall main(__int64 a1, char **a2, char **a3) { signed int i; // [rsp+0
阅读全文
摘要:re | [FlareOn2]Android 因为arm的调试机被我丢学校了,,,所以这个题没法调试,小小的参考了一下国外师傅的文章: http://nieluj.github.io/flareon2/ 题目主要是native层的一个安卓逆向,ida打开,然后修一下参数: int __fastcal
阅读全文
摘要:re | [FlareOn6]Snake 题目给了一个.nes文件,查了一下是FC游戏,可以用FC模拟器打开。 这里参考了:https://www.cnblogs.com/harmonica11/p/13456725.html 可以用ida打开: ROM代码从0x10开始,并将在0xC000加载到内
阅读全文
摘要:re | [NPUCTF2020]芜湖🛫 linux x64题目 脑洞题: 反正我看了个base64就没往下看了,直接搜了一下,这玩意儿居然是base64隐写,闻所未闻,记录一下: 参考: https://blog.csdn.net/xnightmare/article/details/10377
阅读全文
摘要:re | [FlareOn2]elfie 一眼看出pyinstaller的题目 采用的python版本是2.7 解包以后拿出来是一个几万行的base64,直接提,然后发现是pyside写的ui 但是我电脑上没有pyside,我就直接换成了pyqt5,稍微调整一下,程序就能跑起来了, 然后在对比的地方
阅读全文
摘要:re | [MRCTF2020]VirtualTree 这个题是一个错题,是有多解的。 原因是使用了abs函数 考察了二叉树后序遍历,和一点基本花指令,还有一点点smc的内容。 直接丢exp了: #include <stdio.h> #include <stdlib.h> #include <mat
阅读全文
摘要:re | [QCTF2018]Xman-babymips mips32架构的题目 位运算,前5位直接xor,后面再加密一次。 直接爆破就好 exp: aim = [82, 253, 22, 164, 137, 189, 146, 128, 19, 65, 84, 160, 141, 69, 24,
阅读全文
摘要:re | windows下编译llvm12 踩了很多坑!这篇文章全是坑,如果要看请看到结尾,不胜感激。 事实上我之前就尝试过windows编译,然后失败了,这次属于是第二次尝试。 起因与尝试 最近在搞编译器,用llvm生成IR,环境是windows,用的源码是llvm6.0.1 源码下载:https
阅读全文
摘要:re | [GWCTF 2019]re3 这几天都在看pwn,看点re换换心情。 一眼smc,都不需要动调了,直接patch掉 start = 0x402219 for i in range(231): addr = start + i patch_byte(addr, get_wide_byte(
阅读全文
摘要:pwn | 堆利用笔记 先搞清数据结构才行,这部分只能多画图多画表格,不然没办法理解。 堆相关数据结构 glibc的堆块结构如下: ctfwiki上给出的数据结构: INTERNAL_SIZE_T是宏定义,其实就是size_t,在32位下是32位,64位下是64位。 下面是我自己画的图: 我们称前两
阅读全文
摘要:pwn | ez_pz_hackover_2016 x86 checksec: 基本上逻辑是这样的: 漏洞函数是一个栈溢出: 这里有一个坑,传进vul函数的是input字符串的地址的地址,不是input字符串的地址,所以memcpy的时候复制的内容不是从input字符串的开头开始的: 这样返回地址是
阅读全文
摘要:AI | 强化学习 | qlearning 之前跟着莫烦python用numpy和pandas来做强化学习的qtable,感觉pandas太反人类了,这次把他课上的例子用python原生的字典来做qtable重新写了一份,便于理解。 代码如下: import time import random N
阅读全文