操作系统设计实践
2018年以前的是x86平台,2019年开始改为risc-v平台。https://pdos.csail.mit.edu/6.828/2025/xv6.html xv6 中文文档 环境搭建ubuntu24.04虚拟机 sudo apt-get install git build-essential gdb-multiarch qemu-system-misc gcc-riscv64-linux-gnu binutils-riscv64-linux-gnu 源码结构1. kernel/ 目录 - 内核核心代码这是xv6操作系统的内核部分,包含所有核心功能: 进程管理: proc.c, proc.h - 进程控制块(PCB)和进程管理 exec.c - 程序执行和加载 swtch.S - 进程上下文切换的汇编代码 内存管理: kalloc.c - 内核内存分配器 vm.c, vm.h - 虚拟内存管理 memlayout.h - 内存布局定义 文件系统: file.c, file.h - 文件操作接口 fs.c, fs.h -...
LILCTF-Re&Crypto
好精彩的比赛😀虽然过程很艰难,收获还是很大的 ReverseARM ASMapk先用jadx分析 发现check函数在native层,并且找到了密文,解压分析ez_asm_hahaha.so 分析check函数逻辑:首先验证输入字符数是否为48, 第一次使用表 t对输入字节进行重排列,将重排列后的结果与表 t进行异或并且每次循环t与i进行异或, 第二次位旋转,每三字节一组,第一字节循环左移3位,第二字节循环右移1位,第三字节不变 第三次进行自定义base64编码 完整解题脚本: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107import base64# ============ 自定义 Base64...
安卓动调初步
...
控制流平坦化
之前安装对抗控制流平坦化的工具deflat.py但失败,今天成功了😃 控制流平坦化是一种代码混淆技术,就是让流程图平坦、扁平源码,把清晰的逻辑变得很难看懂 原理讲解:https://bbs.kanxue.com/thread-284242.htm 去平坦化环境安装 windows环境 pip install angr https://github.com/cq674350529/deflat 运行python deflat.py -f test –addr main函数地址 未混淆的可执行文件 平坦化的可执行文件 去平坦化的可执行文件 程序逻辑清晰了很多
Nepctf2025
比赛进行的两天还在外地,这几天打算做一遍题目,题目很好啊,可惜我好菜😶 复现复现复现 CryptoNepsignsm3参考链接:https://blog.csdn.net/qq_40662424/article/details/121637732 SM3是一种由中国国家密码管理局公布的商用密码杂凑算法,与SHA-256安全相当,四个步骤:消息填充、消息扩展、迭代压缩、输出结果。消息分组长度为512位,摘要长度为256位 分析server.py 1234def SM3(data): d = [i for i in data] h = sm3.sm3_hash(d) return h 用于计算输入数据的 SM3 哈希值 的 Python 函数,基于gmssl库 1234def SM3_n(data, n=1, bits=256): for _ in range(n): data = bytes.fromhex(SM3(data)) return data.hex()[:bits // 4] SM3_n 是一个...
Re的记录
...
以后
...
RSA原理
大二下学期有学信息安全数学基础课程,分数考的好低(心痛😭 要学密码学吗,没想好,或许先试试吧 加密原理生成密钥: 选择两个大素数p和q(通常1024位或更长),计算它们的乘积n=p*q,n称为模数,是公钥和私钥共有的部分 计算n的欧拉函数值 ϕ(n)=(p-1)(q-1) 选择公钥指数e,满足1<e<ϕ(n)且e 与 ϕ(n)互质 计算私钥指数d,d是e关于模 ϕ(n)的乘法逆元,d≡e−1(modϕ(n)) 密钥对:公钥(e,n) 私钥(d,n) 加密 (用公钥 (e,n)):对明文m(需转换为整数且 m<n),计算密文 c:c≡m**e(modn) 解密 (用私钥 (d,n)):对密文 c,计算明文 m:m≡c**d(modn) RSA的安全性依赖于大数分解的困难性,是现代网络安全(如HTTPS、数字签名)的基石之一 怎么求逆元🤔1.扩展欧几里得算法 2.欧拉定理 费马小定理:若p为素数,则有a^{p-1}≡1(mod p)a^{p-2}*a≡1(mod p)p−2就是a在mod...
云镜-hospital
终于打下了一个靶场,但是觉得自己的学习方式是不对的,一直在做但是没学到东西的感觉) 参考wp,感谢大佬: 最保姆级的春秋云镜Hospital打靶笔记 Yuq1Ng的wp 先知社区 基本流程还是和Initial很像,又安装了很多工具啊 流程开启靶场之后,用fscan扫描漏洞 8080端口有Spring Boot Actuator heapdump信息泄露漏洞, 访问/actuator/heapdump下载到heapdump文件 1heapdump 文件(通常扩展名为 .hprof)是 Java 虚拟机(JVM)堆内存的快照文件,记录了某一时刻内存中存储的所有对象、类、线程等信息。它常用于 调试内存泄漏、分析应用运行状态、提取敏感信息。 1java -jar JDumpSpider-1.1-SNAPSHOT-full.jar heapdump 提取heapdump的敏感信息,得到了Shirokey,用shiro一把梭工具(这个工具需要用Java8运行)注入内存马,之后用蚁剑连接 无法读root目录 本地suid提权 介绍一下suid提权 1find...
qax培训
七天的培训真的好累啊,第一天貌似在玩游戏,后面三天在打靶场,然后学了一天蓝队,最后一天讲了hvv和考试 学网安果然需要实战,打靶场的三天学到了很多东西 Cyber Fortress1.靶机 172.16.12.97 端口扫描 80端口-http网页 3389端口-远程桌面 5985端口-Winrm远程管理 7001端口- 一些常见的应用服务器,比如WebLogic服务器和Tomcat服务器 Dirsearch目录扫描 访问扫出来的页面 http://172.16.12.97/robots.txt flag1 http://172.16.12.97/api.php flag2 扫描7001端口 打开http://172.16.12.97:7001/examples/ 发现是kindeditor编辑器 查看版本 搜索3.5.5版本的漏洞 目录遍历漏洞...
云镜-Initial
第一次打靶场,第一次接触内网渗透,做的过程中看了很多大佬的wp,感谢:) https://blog.csdn.net/uuzeray/article/details/141316323 https://xz.aliyun.com/news/11561 https://9anux.org/2024/08/01/%E6%98%A5%E7%A7%8B%E4%BA%91%E5%A2%83Initial%E8%AF%A6%E8%A7%A3/index.html https://wz0beu.cn/%e4%ba%91%e9%95%9c-initial/ 2025.6.29 终于内网穿透成功了,打靶场成功 这真的是一件很酷的事情,我大概都只是照着师傅的wp在重复,要多学些东西才行呀 基本流程用fscan扫描靶场ip,有thinkphp5.0.23RCE,用工具一把梭 添加了一个webshell,可以用蚁剑连接 读/root目录要提权 linux sudo提权方法 mysql的sudo提权 123sudo -lsudo mysql -e '\! find / -type...