lactf - ScarbAsm
// chall.c #include <stdio.h> #include <stdlib.h> #include <string.h> #include <time.h> #include <sys/mman.h> #include <unistd.h> #define HAND_SIZE 14 #define B...
// chall.c #include <stdio.h> #include <stdlib.h> #include <string.h> #include <time.h> #include <sys/mman.h> #include <unistd.h> #define HAND_SIZE 14 #define B...
格式化字符串漏洞,但是这一题只会执行一次输入,也就是说,没有“泄露信息”的机会。 0x01 尝试劫持got表 首先想到的是:利用一次任意位置写的机会,劫持控制流。比如修改got表: pwndbg> checksec File: /ctf/pragyan26/talking_mirror/challenge Arch: amd64 RELRO: Partial...
没有防护,直接栈溢出 pwndbg> checksec File: /ctf/pragyan26/dirty_laundry/chal Arch: amd64 RELRO: Partial RELRO Stack: No canary found NX: NX enabled PIE: No PIE (0x400000)...
解出来的第一道heap相关的题,还是挺有成就感的。 0x00 调试方法 这一题给了 libc-2.27和一个比较老的libstdc++,直接在当前目录下把附件libc命名为libc.so.6会出问题,似乎是版本太过古老,会导致当前的shell命令都出问题,连ls都不能执行。咨询yxy学姐后,建议我用patchelf修改,但是这一题还有libstdc++,有一堆依赖不太好办。 无奈之下我开始...
LLM决定调用什么工具:返回AI message 工具输出的结果:Tool message LLM最后要看的部分:messages将所有的Message(包括SystemMessage, HumanMessage, AIMessage, ToolMessage)都放进去,重点表示的是一个“时间线”,让LLM能有记忆功能 追踪流失输出中的event: ===================...
最近闲来无事,又翻出了这一道题。起初我尝试用gdb脚本解,但是只解出了最后几个字符;后来看discord群里有大佬是用unicorn做的,也体验了一下这个工具,发现确实挺不错的。 0x01 gdb脚本尝试 刚拿到程序,发现是一个stack vm,含有大量gadget 函数 .text:00000000004013E0 .text:00000000004013E1 .text:0000000...
参考教程: https://www.datacamp.com/tutorial/langgraph-tutorial 0x01 用LangGraph构建单节点ChatBot import os from dotenv import load_dotenv from pydantic import SecretStr from IPython.display import Imag...
hyprland中全屏 可以使用fullscreen命令. 另外发现了hyprland的配置支持SHIFT组合键,丰富了常用按键的功能 .config/hypr/hyprland.conf # Win + Shift + K 全屏模式 bind = $mainMod SHIFT, K, fullscreen # Win + Shift + J 水平/竖直切换 bind = $mainM...
记录一些离散的知识点/感悟 String 和 &str String -> &str : .as_str() &str -> String : .to_string() 其次是编写函数的参数类型选择上,基本原则是:&str只是副本,函数是只需要获得其值,还是真的需要获得“本尊”? enum to String ...
这学期上了一门《程序语义分析与验证》的课,老实说我对其中的数学证明不太感冒(对我来说,有点“过于”严谨了),但是其中介绍的函数式编程语言非常吸引我,打算趁这个机会玩一玩。 这个系列不会用来记录繁杂的知识点,而是写下一些偶尔的想法。 函数的柯里化 在编写”根据key查找map中数据”的时候,刚开始我编写了基础版本的程序: book = [("a", 12), ("b", 13), ("c"...