自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(67)
  • 收藏
  • 关注

原创 Unicorn批量模拟执行爆破实践

批量进行unicorn模拟执行爆破结果,并解决资源占用的潜在问题

2024-06-19 10:46:09 343

原创 DASCTF X GFCTF 2024|四月开启第一局 —— re前三题wp

DASCTF X GFCTF 2024|四月开启第一局 re前三题writeup

2024-04-21 21:11:30 729

原创 基础的unicorn模拟简介与库函数调用方案与代码实例

Unicorn模拟执行与库函数调用的基础方案与代码实例

2024-04-12 16:02:25 525

原创 【Android】在WSA安卓子系统中进行新实验性功能试用与抓包(2311.4.5.0)

在根据几篇22和23的WSA抓包文章进行尝试时遇到了问题,同时发现新版Wsa的一些实验性功能能优化抓包配置时的一些步骤,因而写下此篇以作记录。Wsa版本:2311.40000.5.0。

2024-01-23 15:05:06 1669

原创 gmpy2与一些python库在vscode下没有自动补全的一种缓解方案

从pycharm的python stubs文件里薅一份gmpy2.py塞到本地gmpy2目录下,解决gmpy2的代码补全问题

2024-01-19 15:36:06 1348

原创 Frida成功使用Interceptor.attach hook了so函数却不进入onEnter与onLeave

看看是不是把函数调用优化了。

2023-11-15 11:15:07 385 2

原创 关于qiling->UC_ERR_FETCH_UNMAPPED等执行EXE时内存错误的问题

使用wsl虚拟机,正常走了qiling配置流程后无法使用qiling对样例之外的exe进行模拟,会在执行到dll时,在dll的代码中报出内存未分配等读写错误。系统:kali、ubuntu20、ubuntu22。

2023-11-02 18:01:21 265

原创 关于binwalk->sasquatch插件安装错误的缓解方案

题中这个问题的主要原因是,binwalk使用的sasquashfs仓库所使用的squashfs工具并非是最新版。甚至是这个作者自己写了个patch folder给低版本的squashfs源码打补丁(但就算打了补丁,在高版本的kali和ubuntu20+的版本依旧很难编译)首先就是我们的报错1,相信那是大家搜到这个问题的直接原因。此时,虽然我们使用binwalk所报错的“sasquashfs”命令会提示报错,但对于正常使用mksquashfs工具打包的squashfs系统已能正常解包。

2023-10-24 17:06:54 773

原创 Rust交叉编译简述 —— Arm

在Wsl-Kali下,使用apt安装Arm交叉编译链完成Rust->Arm的交叉编译

2023-08-15 20:37:15 1923

原创 WSA - root,frida与ida测试

本文旨在配置windows subsystem for android(win安卓子系统)来作为win在开启了hyper-v的情况下的一种轻量的安卓模拟器方案。使用MagiskOnWsa设置root权限,最终使其正常与开发环境、frida、ida打通。

2023-07-17 09:54:50 741

原创 JNI小记1 -- VS生成so给AS调用

需要注意的是,我们的项目在默认情况下是编译不过的。因为定义LOGI、LOGW处的关键字"ANDROID_LOG_INFO"是NDK的头文件"log.h"里才被定义的内容,这里还没被引用。(当然也有不一致的写法,但我还没学到)最后一截是函数名,前面那一串都是包名。需要提的是,直到本文撰写的时间,我在这个页面下的NDK是只有x86-64平台的。快速定位这两个目录可以这样,在ndk目录搜索"log.h"(这个也是项目默认所需要引用的)如果之前的配置步骤一致,编译正常是通过的。生成完毕后AS新建工程、、、

2023-04-14 15:11:38 863

原创 Neo4j学习小计 -- day 1

【代码】Neo4j学习小计 -- day 1。

2023-04-04 00:08:05 93

原创 Python list -- str -- int -- bytes 互转代码整理

【代码】Python list -- str -- int -- bytes 互转代码整理。

2023-04-03 11:48:05 611

原创 dota x ctf 赛后反思

Redbud,不愧是清华脑王,一晚上就能基本确认整个脚本,他的走位脚本写得真是叹为观止。理解程序,理解编程,多思考,多试,思考还要再深,还要再快。– 2023-3-30 dota x ctf 赛后反思 空气猫。游戏理解,思路,游戏理解和bot最终效果的吻合度。有写得很漂亮的装备框架。学习,学习,还不够,得继续学习。是不是人生中第一次冠军呢。

2023-03-30 16:57:19 219

原创 CentOS9的yum安装llvm/clang与测试简述

CentOS 9/Stream 的yum安装llvm/clang,并做了IR生成测试

2022-12-08 16:50:14 1855

原创 DASCTF NOV - re - babytea - writeup

DASCTF NOV X联合出题人2022年度积分榜争夺赛逆向题babytea的writeup

2022-11-28 12:20:09 504

原创 论2022年的嵌入式开发机配置 -- 配置kali2022下的arm-linux交叉编译环境

文章目录arm-linux交叉编译配置通过apt包管理快速配置:写一个demo编译与检查配置qemuarm-linux交叉编译配置通过apt包管理快速配置:sudo apt-get install gcc-arm-none-eabisudo apt-get install gcc-arm-linux-gnueabihfsudo apt-get install g++-arm-linux-gnueabihf现在的apt包能很方便的支持arm的交叉编译链的配置(arm-cross-compiler

2022-04-04 22:38:19 1835 1

原创 关于电脑重启后vm虚拟机打不开的一种简单粗暴的解决方法

第一步:打不开,重启物理机第二步:试图打开,提示取得控制权失败,重启物理机第三步:可能换一个报错,重启物理机好了

2021-10-15 09:26:08 1944

原创 论在Xamarin里对AbsoluteLayout动态添加按钮控件实例(1)

RT这个问题困扰了我一个多小时。添加很简单,但怎么在绝对布局里添加到不同的位置讷?最后还是翻文档的时候翻到了,可以在Layout.Children.Add时,设置第二参如new Point(x,y);,即可在绝对布局里设置其位置。可惜这种方法还是耿直了点,看看能不能找到直接调用LayoutBounds的方法 AbsoluteLayout layout = (AbsoluteLayout)FindByName("AbLayout");

2021-06-14 10:19:27 483

原创 论SMC的实现(3)实战代码样例

注意:该代码记得是参考了github上的一个小项目,具体出处忘了。因为一些原因,大部分代码不能公开,这里写一些能公开的,和SMC有关的代码。加密方法:aes使用常规的aes方法即可int main(int argc, char *argv[]){ int iret = 0; char *inputdata = NULL; int filesize = 0; DWORD readcount = 0; HANDLE readfh = INVALID_HANDLE_VALUE;

2021-04-16 18:02:26 538 1

原创 LeetCode初级算法日记 Day3 旋转数组

题目地址题目描述:给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数。进阶:尽可能想出更多的解决方案,至少有三种不同的方法可以解决这个问题。你可以使用空间复杂度为 O(1) 的 原地 算法解决这个问题吗?示例 1:输入: nums = [1,2,3,4,5,6,7], k = 3输出: [5,6,7,1,2,3,4]解释:向右旋转 1 步: [7,1,2,3,4,5,6]向右旋转 2 步: [6,7,1,2,3,4,5]向右旋转 3 步: [5,6,7,1,2,3,

2021-03-03 21:45:36 114 2

原创 VSCode C# 配置小记

写在前面的话:虽说vs是公认最强大的c#工具。但很多时候我只想在本地跑几个简单的测试样例,这时候用vs未免有些累人。于是乎想到了在vscode上再配置一个c#环境。而因为我用vs预装了sdk,所以以下步骤会和网络上其他教程多少有些出入。一、插件安装:这里网络上推荐的一般都是 c#,c#fixformat,c# extensions 第一个和第三个一下就看到了。但是第二个怎么找都没有。稍微查了一下第二个的作用,发现大概就是语法检查。于是我试着先用了一下列表中的Kite AtuoComplete-AI C

2021-03-01 20:52:48 375

原创 LeetCode初级算法日记 Day2 买卖股票的最佳时机 II

题目地址题目描述:给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易(多次买卖一支股票)。注意: 你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。考点:贪心算法示例1:输入: [7,1,5,3,6,4]输出: 7解释: 在第 2 天(股票价格 = 1)的时候买入,在第 3 天(股票价格 = 5)的时候卖出, 这笔交易所能获得利润 = 5-1 = 4 。 随后,在第 4 天(股票价格

2021-02-25 09:35:36 132

原创 LeetCode初级算法日记 Day1 删除排序数组中的重复项

题目地址题目描述:给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。示例1:给定数组 nums = [1,1,2], 函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为 1, 2。 你不需要考虑数组中超出新长度后面的元素。示例2:给定 nums = [0,0,1,1,1,2,2,3,3,4],函数应该返回新的长度 5, 并

2021-02-24 21:51:07 98

原创 GACTF2020 - Wannaflag wp

GACTF2020 - Wannaflag题目链接十分传统的一个winapi逆向。最近也很少见了,对新人有难度但有趣。本篇的一些细节之处省略截图,但我会把步骤写明白。若复现不出来可评论或私信。程序拿到手还有点大,443kb同时附带了一个flag.bin 进去,打开发现是可读的一串字符串。很显然是被加密过了。查pe,32位无壳 vs编译(这里我用的exeinfo)ida一打开就定位到了WinMain。这里很容易看出来其只调用了两个自定义函数 – 背景音乐(1b20),消息处理(2280)进消息

2020-12-30 23:17:37 270

原创 AWD 一个RE手的PWN机防守有感

AWD 一个RE手的PWN机防守有感①遇到free,不要犹豫,直接patch,我再说一遍,直接patch,全patch,通通patch②不要试图去干涉数值,除非你十分做好了check down的心理准备

2020-12-12 21:00:27 1599 2

原创 HITCTF2020 -- re1 HelloReverse wp

程序分析打开,没什么用的input flag:ida 打开,定位到main函数:作为一道基础re,前面的内容都没什么好说的,输入,长度校验。但后面的内容就开始诡异了起来。首先是给v8赋值的那个变量嗷,不对劲啊不对劲:想来应该是在入口点进行初始化了,一看果然是。打开看看完事一半嗷在比赛的时候想的是先不管他,看看底下的程序一个逻辑我好像看懂了,但其实没看懂的变换。简单的来说是输入串异或来以获去,然后还要和上面那个很迷幻的玩意进行一个比较。这个很迷幻的玩意进行了左移操作,但这个左移菜菜

2020-12-11 21:38:40 389

原创 对称加密算法逆向研究

rc4rc4算法经典地分为两大块 – s盒初始化&&加解密。初始化算法实现void rc4_init(unsigned char* s, unsigned char* key, unsigned long Len){    int i = 0, j = 0;    char k[256] = { 0 };    unsigned char tmp = 0;    for (i = 0; i &lt

2020-10-27 16:08:17 298 1

原创 论非正常调用cmd的那些姿势(待完善

**写在前面的话:**因为做题做到了一个非常神奇的cmd输入输出方式,因此特立此篇收集整理相关的一些调用cmd的奇淫巧计。GetStdHandle()该函数传入的参数只有三种:STD_INPUT_HANDLE (DWORD) -10 – 标准输入设备STD_INPUT_HANDLE (DWORD) -11 – 标准输出设备STD_INPUT_HANDLE (DWORD) -12 – 标准错误设备其中第三种标准错误设备尚未搞明白怎么用,不过前两种可以为我们的骚气的输入输出方式提供

2020-10-10 22:41:41 186

原创 BUUCTF杂项(misc)题练习记录 -- (4)

被嗅探的流量根据提示,该流量分析题会进行一个文件传输。打开之后先在左上角的过滤器(Filter)里过滤出tcp协议,发现如下情况:不过常规跟进POST的tcp流分析之后,发现传输的是一个图片,不过这几份都缺少该图片文件。于是因为这几份走的是http协议,把过滤字段从tcp换成http,成功找到传输图片(JPEG)的包跟进tcp流,寻找一下即可找到flag。flag{da73d88936010da1eeeb36e945ec4b97}小明的保险箱使用binwalk提取完,再用APCHPR爆破

2020-10-10 14:41:09 463

原创 个人考研资料整理(更新一战后感想)

参网络上各个热门帖子万金油复习全书基础: 李永乐·考研数学复习全书张宇考研数学基础30讲+张宇考研数学36讲(高数18讲+线性代数9讲+概率论9讲)高分: 李正元·考研数学复习全书+习题全解(没基础慎重选择)辅导讲义高数: 张宇高数18讲(搭配张宇强化班高数部分)汤家凤高数辅导讲义 (攻坚)、线代: 李永乐线代辅导讲义概率论: 王式安概率论辅导讲义(各个老师大差不差,建议结合强化班使用)习题集张宇1000题(难,灵活)汤家凤1800题(难度梯度合理,打基础)李永乐660题(适合

2020-09-28 13:44:32 2090

原创 BUUCTF杂项(misc)题练习记录 -- (3)

LSBLSB – Least Significant Bit 即最低有效位隐写,其最直接的解法是运用stegsolver的anlayze的data extract功能,将最低位(红绿蓝的0位)0勾选上,右侧的比特序(bit order)选择LSB优先(LSB first)。之后右下角可以用preview生成数据。这题也是一样,走了一波上面的流程之后,可以发现最低有效里隐写了一张png文件:之后再选择下方的save bin,就可以将这个隐写的图片报存下来。发现其为一张二维码,扫码后可得flag:文

2020-09-23 10:27:43 550 2

原创 给自己的逆向工程阶段性学习感想总结

想到哪写哪逆向工程的学习比起近似的pwn来说,还是没那么吃基础的。不过基础知识和能力的牢固程度还是近乎决定了一个re手的上限。自己在这方面还是欠缺了不少。目前最吃亏的一个方面是代码分析能力,或者说算法能力,或者说正向能力,发现在做中难题的时候,遇到那种很长的分析流程就会非常气馁,同时也缺少完整地,独立地完成一个复杂情况的分析的经验。针对这一点,接下来需要的一方面是加强tea,aes,des,rc4,smb4题方面的练习与学习,另一方面是和开始学习逆向工程一样,认真地,就着题解去啃中难题。而除了ctf

2020-09-19 21:46:21 2863

原创 2020 ciscn 东北分区赛 re题解

唉,居然没师傅出re题,悲伤此题考点在于抓取或解密出迷宫,这里我用的原函数进行生成,改改几个定义就可以输出迷宫了:#include<stdio.h>#include<string.h>#include<windows.h> #include<string.h>#include<tchar.h>#include<stdint.h >//#+OXJ xnB1 QWT4 9cnW cGFB ZOjn yfZo ZV1m 7+/

2020-09-19 21:35:19 421

原创 BUUCTF逆向题练习记录(wp) --(4)(偷懒三题

[GKCTF2020]BabyDriver简单win驱动。拖ida仔细分析即可。注意寻找关键函数。[FlareOn6]Overlong这题个人认为非常有意思考察的点在于①发现数组长度远大于给的长度参数0x1c②通过动调直接得出结果。这一题还给了一个附件,提示运用正确的方法进行解密可以很快得到flag,而我们知道,ctf的re题中,最快的解密往往就是动调一把梭。需要大胆猜想,大胆尝试。[WUSTCTF2020]Cr0ssfun额,无脑拼接嗷...

2020-09-18 21:59:26 476

原创 linux内核学习笔记:字符设备驱动学习①

学习视频:linux内核开发第4讲:编写最简单的字符设备驱动学习文章:链接源码:#include <linux/module.h>#include <linux/moduleparam.h>#include <linux/cdev.h>#include<linux/fs.h>#include <linux/wait.h>#include<linux/poll.h>#include <linux/sched.h&g

2020-09-08 16:38:47 181

原创 BUUCTF逆向题练习记录(wp) --(3)WUSTCTF2020&&level1-4已完成

注:funnyre待我搞懂angr后来解WUSTCTF2020-level1解密嗷hexData = [0, 198, 232, 816, 200 , 1536 , 300 , 6144 , 984 , 51200 , 570 , 92160 , 1200

2020-08-28 11:56:27 457 1

原创 BUUCTF杂项(misc)题练习记录 -- (2)

你竟然会赶我走010拉到底嗷,从大小看是藏东西了,结果漏了flag:flag{stego_is_s0_bor1ing}乌镇峰会种图010拉到底嗷,又漏了flag:flag{97314e7864a8f62627b26f3f998c37f1}rarrar包,win可用ARCHPR爆破 链接:acat密码8795flag:flag{1773c5da790bd3caff38e3decd180eb7}qr直接扫,签到题flag:flag{{878865ce73370a4ce607d21ca01

2020-08-22 14:35:29 467

原创 2020国赛部分re -- wp

re1:idapy 扒校验数组:from __future__ import print_function#支持py2使用py3的函数from __future__ import print_function#支持py2使用py3的函数sea = 0x404020for i in range(sea,sea+0xa8,4): print('0x%x'%(Byte(i+1)),end="") print(('%x'%Byte(i)+','),end="")注意部分元素补0from z

2020-08-21 19:05:26 654

原创 记那些我做逆向题常用到的idapy脚本

解密重覆盖:sea = ScreenEA()end =str = "123"# d = 0for i in range(sea,end): PatchByte(i,(Byte(i)^str[d%3])) d += 1输出十六进制数组:from __future__ import print_function#支持py2使用py3的函数from __future__ import print_function#支持py2使用py3的函数sea = ScreenEA()fo

2020-08-21 12:21:02 521

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除