<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Sciurdae的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Sciurdae</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Sciurdae]]></copyright><item><title><![CDATA[Windows内核理论基础学习]]></title><link>https://blog.youkuaiyun.com/Sciurdae/article/details/135391868</link><guid>https://blog.youkuaiyun.com/Sciurdae/article/details/135391868</guid><author>Sciurdae</author><pubDate>Thu, 04 Jan 2024 19:10:43 +0800</pubDate><description><![CDATA[近俩天的学习-Windows内核基础的学习笔记。算是一个概述，毕竟每一个小点单拉出来都可以讲好久。学了这俩天，对内核的理解算是清晰了那么一点点了，持续学习ing…欢迎师傅一起交流讨论私信andwx都欢迎。参考文献：《加密与解密》Windows内核基础《Windows内核原理与实现》系统总述《深入理解Windows操作系统》Chat Gpt…MSDN文档。一些零零散散的大佬的blog。]]></description><category></category></item><item><title><![CDATA[Windows反调试技术学习]]></title><link>https://blog.youkuaiyun.com/Sciurdae/article/details/135324108</link><guid>https://blog.youkuaiyun.com/Sciurdae/article/details/135324108</guid><author>Sciurdae</author><pubDate>Mon, 01 Jan 2024 12:58:22 +0800</pubDate><description><![CDATA[元旦快乐！！！只是粗浅的两天的一点笔记和实践记录。加解密一书每一章应该都要来回啃上几遍才能理解，书中好多还是不懂的，只能先学能理解的，后面再继续深入了。下一个该学异常处理了，学完就把这一次笔记的关于异常的反调试补上。ε=(´ο｀*)))，元旦快乐！]]></description><category></category></item><item><title><![CDATA[长城杯2021政企组-魔鬼凯撒的RC4茶室 WP]]></title><link>https://blog.youkuaiyun.com/Sciurdae/article/details/135290869</link><guid>https://blog.youkuaiyun.com/Sciurdae/article/details/135290869</guid><author>Sciurdae</author><pubDate>Fri, 29 Dec 2023 14:47:43 +0800</pubDate><description><![CDATA[前面看起来像是RC4加密，结合题目一开始也以为是RC4，实际上并没有发现key。尝试之后，发现下面俩个加密实际都不重要。根据程序后面可以知道，flag片段里面的flag就是密文，拿密文和key异或可以得到前半段flag。有个小技巧，这里传入的参数是Str字符串，但是原本IDA自动识别出来的类型是。，所以直接看就是很多（BYTE *）类型转换，可以直接对a1按。输入1111122222为flag，动态调试。UPX壳，upx -d直接脱。这样就特别容易看了，其他题目同理。正确，也就得到了后半部分flag。]]></description><category></category></item><item><title><![CDATA[Blowfish加密算法学习]]></title><link>https://blog.youkuaiyun.com/Sciurdae/article/details/135266627</link><guid>https://blog.youkuaiyun.com/Sciurdae/article/details/135266627</guid><author>Sciurdae</author><pubDate>Thu, 28 Dec 2023 12:58:05 +0800</pubDate><description><![CDATA[Blowfish是一种对称区块加密算法。该算法流程分为密钥扩展以及数据加密俩部分，每次分组长度为64位，密钥采用32-448位，经过扩展后生成多个子密钥数组。进行共16轮的迭代加密。]]></description><category></category></item><item><title><![CDATA[利用FLRIT恢复符号表---笔记]]></title><link>https://blog.youkuaiyun.com/Sciurdae/article/details/135206885</link><guid>https://blog.youkuaiyun.com/Sciurdae/article/details/135206885</guid><author>Sciurdae</author><pubDate>Mon, 25 Dec 2023 19:22:12 +0800</pubDate><description><![CDATA[获得一个要创建签名文件的静态库利用FLAIT为库创建一个模式文件使用sigmake处理生成的模式文件，生成一个签名文件将签名文件复制到sig中。]]></description><category></category></item><item><title><![CDATA[强网杯2022GameMaster复现]]></title><link>https://blog.youkuaiyun.com/Sciurdae/article/details/135202405</link><guid>https://blog.youkuaiyun.com/Sciurdae/article/details/135202405</guid><author>Sciurdae</author><pubDate>Mon, 25 Dec 2023 16:09:41 +0800</pubDate><description><![CDATA[这里又是对Program.memory进行了一个加密，用了ECB加密模式，填充方式是PaddingMode.Zeors，这是一个典型的AES加密。给了俩组密文，依次解密，第一组用z3求解。可以得到x，y，z。三个数据根据ParseKey可以得到长度为12的array4，已知array5，俩者异或就可以得到flag。大概这个exe就看完了，下面也不太清楚都做了什么，可以明白的是gamemessage是可以解密的。这里就是AchivePoint3了，进行了一个反序列化的操作，但是没有对文件进行处理。]]></description><category></category></item><item><title><![CDATA[[安洵杯 2019]Game复现]]></title><link>https://blog.youkuaiyun.com/Sciurdae/article/details/135139656</link><guid>https://blog.youkuaiyun.com/Sciurdae/article/details/135139656</guid><author>Sciurdae</author><pubDate>Thu, 21 Dec 2023 20:25:22 +0800</pubDate><description><![CDATA[有俩处，v9那里其实就是减去了48；后面用我们的输入去填D0g3这个数独，最后跟sudoku比较。开了混淆，控制流平坦化，可以使用deflat.py进行去除。逆向，先将数独需要填入的拿出来，check1可以根据z3解。要去除的有多个函数，再进行多次重复去除后可以得到。代码不多，慢慢分析，前面是一些生成数独以及检查。直接看check部分，check没有做什么；做了一些置换，以及简单运算。]]></description><category></category></item><item><title><![CDATA[网鼎杯2022青龙组Re复现]]></title><link>https://blog.youkuaiyun.com/Sciurdae/article/details/135135057</link><guid>https://blog.youkuaiyun.com/Sciurdae/article/details/135135057</guid><author>Sciurdae</author><pubDate>Thu, 21 Dec 2023 16:53:13 +0800</pubDate><description><![CDATA[IDA打开看到VirtualProtect函数。SMC自修改。这里对地址的值进行了复原，写个idapython进行复原（或者动态调试复原）之后对全部数据U了后，复原即可。可以得到第一处将密文和Buffer数组异或即可得到第一部分flag。第二处给了v3、后面有随机数，不太清楚干了什么，因为flag最后一位是 ‘}’ ，猜测一下用是用v3 和 rand 异或。]]></description><category></category></item><item><title><![CDATA[NSSCTF靶场练习[HUBUCTF 2022 新生赛]]]></title><link>https://blog.youkuaiyun.com/Sciurdae/article/details/135040010</link><guid>https://blog.youkuaiyun.com/Sciurdae/article/details/135040010</guid><author>Sciurdae</author><pubDate>Sat, 16 Dec 2023 23:59:52 +0800</pubDate><description><![CDATA[签到题一个base64编码，自定义了码表、]]></description><category></category></item><item><title><![CDATA[NSSCTF-Crypto靶场练习---41-46WP]]></title><link>https://blog.youkuaiyun.com/Sciurdae/article/details/135006992</link><guid>https://blog.youkuaiyun.com/Sciurdae/article/details/135006992</guid><author>Sciurdae</author><pubDate>Fri, 15 Dec 2023 00:03:13 +0800</pubDate><description><![CDATA[求 P-1 和 Q-1 的lcm 最小公倍数实际上就是我们要的 phi了。第二行是base64码表，有 %3D，%2F，%2B 是Unicode编码，可以换成。要用工具，或者在线网站https://sagecell.sagemath.org/注意的是 z3中用的是Int类型，所以要求的c1和c2也要是int类型，原先。没有考什么，N可以直接分解，得到p和q。这样得出来的c1是 mpz类型的，所以要用int转换。都是迷惑的东西，别看，注意关键的pow就好。c1和c2再根据z3就可以算出F1和F2了。]]></description><category></category></item><item><title><![CDATA[ISCTF2023 Reverse方向 WP]]></title><link>https://blog.youkuaiyun.com/Sciurdae/article/details/134986964</link><guid>https://blog.youkuaiyun.com/Sciurdae/article/details/134986964</guid><author>Sciurdae</author><pubDate>Thu, 14 Dec 2023 09:17:14 +0800</pubDate><description><![CDATA[那么根据简单的数学公式，我们可以知道phi 即 (p-1)(q-1) = (p+1)(q+1) - 2(p+q),以及n = p * q =  (p+1)(q+1) - (p+q) - 1;但是其实现在也还有点疑惑，为什么TEA加密的时候的明文和key是相同的，解密的时候密文和key也可以相同，当时就是这里纠结不出来。这里拿 刚刚 TEA加密后的密文，先是异或，将得到的数据作为一个二维数组的索引，把当前位置的值设置为1，最后比较返回0。发现一小段花指令，去除后发现是一个TEA加密，但是目前不清楚是哪里的。]]></description><category></category></item><item><title><![CDATA[数论基础-最大公约数-（扩展）欧几里得算法-同余]]></title><link>https://blog.youkuaiyun.com/Sciurdae/article/details/134980278</link><guid>https://blog.youkuaiyun.com/Sciurdae/article/details/134980278</guid><author>Sciurdae</author><pubDate>Wed, 13 Dec 2023 19:41:44 +0800</pubDate><description><![CDATA[最大公约数即为 Greatest Common Divisor，常缩写为 gcd。一组整数的公约数，是指同时是这组数中每一个数的约数的数。+1和-1是任意一组整数的公约数。一组整数的最大公约数，是指所有公约数里面最大的一个。# 5两个或多个整数公有的倍数叫做它们的公倍数，其中除0以外最小的一个公倍数就叫做这几个整数的最小公倍数（Least Common Multiple, LCM）。最小公倍数和最大公约数的关系同余在数论中是一种等价关系，当俩个整数除以同一个正整数，若余数相同，则称俩个整数同余。]]></description><category></category></item><item><title><![CDATA[NSSCTF Crypto靶场练习，31-40WP]]></title><link>https://blog.youkuaiyun.com/Sciurdae/article/details/134955938</link><guid>https://blog.youkuaiyun.com/Sciurdae/article/details/134955938</guid><author>Sciurdae</author><pubDate>Tue, 12 Dec 2023 18:14:57 +0800</pubDate><description><![CDATA[说说知识点，p和q都是小明文攻击，因为e是2，且p的2次方明显小于n，所以都直接对P和Q开方就可以得到p，q了。根据hint，下一个是栅栏密码，要先提示信息 doyouknowfence删除，不然解不出来，而且这里用的是加密。维吉尼亚密码，网站嗦一下https://www.guballa.de/vigenere-solver。这样可以求出 n1和n2 的最大公约数，继而求出p1，再求 n2和n3 的最大公约数，求出p3。WP链接：https://www.nssctf.cn/note/set/2178。]]></description><category></category></item><item><title><![CDATA[关于.so文件以及.dll和.lib文件]]></title><link>https://blog.youkuaiyun.com/Sciurdae/article/details/134942928</link><guid>https://blog.youkuaiyun.com/Sciurdae/article/details/134942928</guid><author>Sciurdae</author><pubDate>Tue, 12 Dec 2023 10:31:53 +0800</pubDate><description><![CDATA[上一篇笔记说到动态链接库和静态链接库，重点说了DLL的链接。，文件后缀为.so.so文件和.dll文件的区别dll的链接方式有俩种（隐式加载和显式加载）而so文件的链接是通过ld命令来进行的。例如：有一个源文件example.c-shared-fPIC然后，我们有一个使用这个共享库的程序main.c编译main.c这里的-ldl选项是为了链接libdl库，它包含动态链接相关的函数。最后，运行生成的可执行文件. / main。]]></description><category></category></item><item><title><![CDATA[NSSCTF Crypto靶场练习，21-30wp]]></title><link>https://blog.youkuaiyun.com/Sciurdae/article/details/134938609</link><guid>https://blog.youkuaiyun.com/Sciurdae/article/details/134938609</guid><author>Sciurdae</author><pubDate>Mon, 11 Dec 2023 23:17:45 +0800</pubDate><description><![CDATA[题目也只给了 flag 和 n，flag应该是加密过后的c；小明文攻击的情况就三种，e = 3，e = 2，e = 1；观察文本里有俩个等号，如果是base的话，这俩个等号应该在结尾才对。也是RSA，有了e1*e2的值。也是可以用爆破，依次爆e1和e2的值。试了一下，发现是base32，得到flag NSSCTF{have_a_nice_tey}俩个模数n，以及同一个q，可以先用共享素数攻击，可以得到p和q1。再用凯撒密码，试试。附件打开，RSA加密，根据rsa公式计算。用在线网站解一下，发现可以解。]]></description><category></category></item><item><title><![CDATA[静态链接库和动态链接库（隐式载入显式载入）]]></title><link>https://blog.youkuaiyun.com/Sciurdae/article/details/134936922</link><guid>https://blog.youkuaiyun.com/Sciurdae/article/details/134936922</guid><author>Sciurdae</author><pubDate>Mon, 11 Dec 2023 21:51:58 +0800</pubDate><description><![CDATA[关于代码复用，有些文件专门用于存储可以重复使用的代码块，例如功能实用的函数或者类，我们通常将它们称为库文件，简称“库”（Library）。将这种库文件进行打包编译后得到二进制文件就是链接库。链接库是一个不能独立运行的二进制文件，它必须经过其他程序调用，才可以载入内存中。根据链接方式的不同，可以分为静态链接库和动态链接库。]]></description><category></category></item><item><title><![CDATA[Crypto-RSA低加密指数攻击]]></title><link>https://blog.youkuaiyun.com/Sciurdae/article/details/134915812</link><guid>https://blog.youkuaiyun.com/Sciurdae/article/details/134915812</guid><author>Sciurdae</author><pubDate>Sun, 10 Dec 2023 22:22:47 +0800</pubDate><description><![CDATA[小明文攻击。当RSA加密时所用e较小时。可以通过RSA加密公式直接求出m，不需要分解n，求d。]]></description><category></category></item><item><title><![CDATA[NSSCTF-Crypto靶场练习--第11-20题wp]]></title><link>https://blog.youkuaiyun.com/Sciurdae/article/details/134911298</link><guid>https://blog.youkuaiyun.com/Sciurdae/article/details/134911298</guid><author>Sciurdae</author><pubDate>Sun, 10 Dec 2023 17:25:06 +0800</pubDate><description><![CDATA[考察模不互素的知识，当存在两个公钥的 N 不互素时，我们显然可以直接对这两个数求最大公因数，然后直接获得 p，q，进而获得相应的私钥。@#$%^&*() 没有数字，将文本里的符号都用0-9替换就可以解base64了。e = 9，n_list 和 c_list 分别都有 9组数据，满足e = k；用自己的维吉尼亚密码爆破一下先，可以爆出NSS的密钥，但是flag不正确。可以使用z3约束求解计算出p和q，之后在根据RSA的公式计算就好。题目 表明很清楚了 Just base 只有base编码。]]></description><category></category></item><item><title><![CDATA[CTF-Crypto-RSA指数攻击-低加密指数广播攻击]]></title><link>https://blog.youkuaiyun.com/Sciurdae/article/details/134907652</link><guid>https://blog.youkuaiyun.com/Sciurdae/article/details/134907652</guid><author>Sciurdae</author><pubDate>Sun, 10 Dec 2023 13:53:19 +0800</pubDate><description><![CDATA[e 较小，模数n和密文c不同，明文m和加密密钥e相同。有多组n和c，组数k，一般k等于e；]]></description><category></category></item><item><title><![CDATA[CTF-Crypto-RSA共模攻击和模不互素攻击]]></title><link>https://blog.youkuaiyun.com/Sciurdae/article/details/134904758</link><guid>https://blog.youkuaiyun.com/Sciurdae/article/details/134904758</guid><author>Sciurdae</author><pubDate>Sun, 10 Dec 2023 10:13:49 +0800</pubDate><description><![CDATA[俩次加密使用了相同的N，有不同的e和c。即已知条件：e1，e2，c1，c2，n；根据求m。]]></description><category></category></item></channel></rss>