BeginCTF2024-re-wp
红白机6502汇编,直接找一个在线网站编译运行一下即可
Easy 6502 (codediy.github.io)
Xorupx -d去壳,然后一堆轮密钥异或,细致一些就可以
1234567891011121314151617181920212223242526272829303132333435#include<bits/stdc++.h>using namespace std;char enc[] = "`agh{^bvuwTooahlYocPtmyiijj|ek'p";char key1[] = "63290794207715587679621386735000";char key7[] = "41803873625901363092606632787947";char key2[20], key3[20], key4[20], key5[20], key6[20], key8[20], key9[20], key10[20], key11[20];int main(){ fo ...
L3HCTF-2024-部分复现
day1聚会去了直接摸鱼,结果队里的爹们直接全给干完了,day2跟师傅们一起把reAK了,只能说OIer多少带点傻逼的
babycom调试可以发现释放了一个dll文件在 C:\Users\Username\AppData\Local\Temp
继续调试到
再 F7 可以进入加密函数
创建函数反编译后发现是一堆 XTEA 加密
key是这个
最后还有一个 advapi32_CryptEncrypt
密文是Buf1
解密即可,参考 CryptEncrypt 函数 (wincrypt.h) - Win32 apps | Microsoft Learn
1234567891011121314151617181920212223242526272829303132333435363738394041#include<iostream>#include"Windows.h"#include<windef.h>#include<stdint.h>unsigned char enc[] ={ 0x0B, 0xAF, 0x5 ...
蓝帽杯(取证杯)2022半决赛WP
EXE 取证1-5嫌疑人手机微信聊天记录 dump 出压缩包和密码,放在微步在线沙箱中五个一把梭子。
APK取证jadx-gui工具。
1APK signature 直接可以看到。
2base64 decode aHR0cHM6Ly9hbnNqay5lY3hlaW8ueHl6
4Manifest.xml1<meta-data android:name="DCLOUD_STREAMAPP_CHANNEL" android:value="exec.azj.kny.d.c|__W2A__nansjy.com.cn|127356250608|"/>
5
感觉这个也算安全检测,选了是
7assets/html 下有三个页面
8解压缩以后找到Info.plist这个文件
12<key>CFBundleIdentifier</key><string>com.dd666.hongxin</string>
包名就是com.dd666.hongxin
912<key>APIKey</key ...
蓝帽杯(电子取证杯)2022赛题复现
当时比赛的时候只做了程序分析,还得是mmr大爹和se大爹最后AK了电子取证还出了个pwn+web直接起飞了。
逆向只有一道题,纯坐牢呜呜呜。:<
LOADER64bit程序,无壳,IDApro打开以后主函数只有几行
12345678int __cdecl main(int argc, const char **argv, const char **envp){ DWORD flOldProtect; // [rsp+30h] [rbp+8h] BYREF VirtualProtect(&unk_7FF6741C3040, 0x34166ui64, 0x40u, &flOldProtect); sub_7FF6741C1040(&unk_7FF6741C3040); return 0;}
查询MSDN可知,VirtualProtect函数的作用是修改任何进程的访问保护,语法为
123456BOOL VirtualProtect( [in] LPVOID lpAddress, // 要更改其访问保护属性的页面的区域的起始页的地址 ...
强网杯2022 部分赛题复现
GameMasterC#逆向,用dnspy打开.exe文件,找到入口点main函数
1234567891011121314151617181920private static void Main(string[] args){ConfigurationManager.AppSettings.Set("microsoft:WorkflowComponentModel:DisableActivitySurrogateSelectorTypeCheck", "true"); FileStream fileStream = File.OpenRead("gamemessage"); int num = (int)fileStream.Length; Program.memory = new byte[num]; fileStream.Position = 0L; fileStream.Read(Program.memory, 0, num); Console.Title = "♠ Black ...
Guitar-乐理基础学习笔记
国际标准音
频率
音名
位置
880hz
a2
一弦17品
440hz(调音器430-445)
a1
一弦5品
220hz
a
三弦2品
110hz
A
五弦空弦
十二平均律
对应吉他十二个品格,相邻一个为半音,两格为一个全音。
C大调:全全半全全全半, 1 2 3 4 5 6 7 1
C小调:全半全全半全全, 1 2 3b 4 5 6b 7b 1
A自然大调:全全半全全全半,6 7 1 2 3 4 5 6
A自然小调:全全半全全全半,6 7 1# 2 3 4# 5# 6
C大调和A小调是关系大小调(相隔关系是一样的),C大调和C小调是同名大小调。
音名C大调唱名相对应
CDEFGAB,对应123456,(Do,Re,Mi,Fa,Sol,La,Ti,Do)
音程基本概念音程就是两个音之间的距离(也可以是自己与自己,就是一度),1 - 2是二度音
分类一般分极为和谐,和谐,不和谐,极不和谐。
音程的计算需要时间熟练
大三度两个全音组成
小三度一个全音一个半音组成
和弦三和弦三和弦顾名思义就是由三个音构成的关系,分为根音,三音,五音。
大三和弦:大三度 ...
旧博客传送机
本来有挺多东西想搬的,但是由于贴图实在是太麻烦了放弃了博客搬家的计划😅,放个旧博客传送机
updated on 2022.11.5: 配好插件以后发现可以直接从网上dump图片,我直接进行一个家的搬😋
AES加密算法学习
算法简介
高级加密标准(英语:Advanced Encryption Standard,缩写:AES),在密码学中又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准。这个标准用来替代原先的DES,已经被多方分析且广为全世界所使用。经过五年的甄选流程,高级加密标准由美国国家标准与技术研究院(NIST)于2001年11月26日发布于FIPS PUB 197,并在2002年5月26日成为有效的标准。2006年,高级加密标准已然成为对称密钥加密中最流行的算法之一。(摘自百度百科)
AES属于对称加密算法,加密解密使用的密钥相同,同时也是分组加密算法,明文长度固定为128位,密钥长度分为128位,192位,256位,(也就是常说的AES128,AES192,AES256),密钥每增加64位加密函数增加两轮。
萌新是跟着这位爷和这个视频学的。
前置芝士伽罗华域(Galois Field)上的四则运算
GF(2^8)有限域上的运算问题
看了一天AES数学基础,果然最痛的还是数学😭
个人理解:有限域上的多项式运算主要是把握住加减法运算和异或运算的等效性,理解了这一层,对于有限域G ...
XCTF2023-re-部分复现
我不是病毒2.0大概是萌新唯一有能力复现的题了吧,太菜了呜呜呜呜呜,打比赛的时候做 flappy-bird 做了一天真的逆不动,看来得 allin 一下安卓了。
对着 官方wp 和 大爹战队的wp 复现的。
[原创]Python逆向——Pyinstaller逆向-软件逆向-看雪论坛-安全社区|安全招聘|bbs.pediy.com (kanxue.com)
题目是个 exe 文件,查壳发现是 pyinstaller 打包的程序
用 pyinstxtractor.py 解包,但是注意附件的 python 环境是 3.10 的,所以本地的 python 环境也得是 3.10,否则解包出来的 PYZ-00.pyz_extracted 文件夹是空的。PYZ-00.pyz_extracted非常重要,一般一个稍微大一点的项目都会分成多个py文件,甚至会依赖其他模块,这些被依赖的文件解析后都会放入PYZ-00.pyz_extracted中,可以说这里放的是核心代码。
可以看到 pyinstxtractor.py 中有检测 MAGIC_NUMBER 也就是检测了 python 版本。
我们修 ...
ChaCha20 - Salsa20学习笔记
前几天做 mcmc 遇到一个魔改的 Chacha20算法,顺便学一下,抄的这份博客 。
Chacha20 加密算法算法简介
ChaCha20-Poly1305 是一种 认证加密 算法。 ChaCha20-Poly1305加密时无需硬件加速,而且加密速度通常比AES-GCM更快,所以某些 移动设备中会优先采用ChaCha20-Poly1305加密算法。ChaCha20-Poly1305由两部分组成,分别是Poly1305和ChaCha20。 —— 摘自【维基百科】
初始化矩阵ChaCha20 加密的初始状态包括
一个128位常量(Constant),常量的内容为 0x61707865, 0x3320646e, 0x79622d32, 0x6b206574
一个256位密钥(Key)
一个64位计数(Counter)
一个64位随机数(Nonce)
一共64字节其排列成 4 * 4 的 32 位字矩阵如下所示:(实际运算为小端)
1
2
3
4
Constant
Constant
Constant
Constant
Key
Key
Key
Key
Key
Ke ...