subtitle
04
18
netlink学习笔记 netlink学习笔记
什么是netlinkNetlink是linux提供的用于内核和用户态进程之间的通信方式。 但是注意虽然Netlink主要用于用户空间和内核空间的通信,但是也能用于用户空间的两个进程通信。 sendmsg 用一个nf_tables的例子来理解
2025-04-18 q1ming
18
nf_tables入门 nf_tables入门
基本知识TODO 基本数据结构nft_table:https://elixir.bootlin.com/linux/v5.10/source/include/net/netfilter/nf_tables.h#L1074 可以看到这里的c
2025-04-18 q1ming
17
CVE-2022-34918 CVE-2022-34918
环境搭建commit:2c85ebc57b3e1817b6ce1a6b703928e113a90442 config: defconfig+: CONFIG_CONFIGFS_FS=yCONFIG_SECURITYFS=yCONFIG_NE
2025-04-17 q1ming
17
13
sk_buff学习笔记 sk_buff学习笔记
背景知识 sk_buff 在内核网络协议栈中代表一个「包」,我们不难想到的是我们只需要创建一对 socket,在上面发送与接收数据包就能完成 sk_buff 的分配与释放,最简单的办法便是用 socketpair 系统调用创建一对 sock
2025-04-13 q1ming
11
io_uring学习笔记 io_uring学习笔记
回顾IO方式基于 fd 的阻塞式 I/O:read()/write() 非阻塞式 I/O:select()/poll()/epoll() 线程池方式 Direct I/O(数据库软件):绕过 page cach
2025-04-11 q1ming
11
复合页 复合页
复合页复合页的引入 很多时候页面分配只是分配了页表项,只有当第一次访问的时候才会触发缺页中断,然后分配真正的物理内存,而每次触发在汇编指令层往往就是8字节,总之很小,每次只能触发一个page的缺页; 所以,如果大量分配页面,那么要想让这些页
2025-04-11 q1ming
11
CVE-2023-2598 CVE-2023-2598
环境搭建Linux-v6.3 commit:457391b0380335d5e9a5babdec90ac53928b23b4 config: defconfig+: CONFIG_USER_NS=yCONFIG_SECURITY
2025-04-11 q1ming
10
如何栈回溯 如何栈回溯
调用约定参考这篇文章https://www.cnblogs.com/rosesmall/p/14849478.html 看一下几类常见的调用约定:(虽然本文探究的问题似乎不是由调用约定的改变而引起的😊) 笔者目前遇到的问题就是,希望通过
2025-04-10 q1ming
09
Linux网络基础 Linux网络基础
前言从复现CVE中的命令行开始: ip link set lo up tc qdisc add dev lo root handle 1: drr tc class add dev lo parent 1: classid 1:10 d
2025-04-09 q1ming
08
CVE-2016-0728 [HALF] CVE-2016-0728 [HALF]
漏洞成因每一个进程都可以使用keyctl(全名为KEYCTL_JOIN_SESSION_KEYRING)来为当前的会话创建相应的keyring,而且还可以为keyring指定名称,如果不需要指定名称的话,传入NULL参数即可。 通过引用相同
2025-04-08 q1ming
07
Linux进程调度入门 Linux进程调度入门
基础知识思维导图 调度类和调度策略摘自:https://zhuanlan.zhihu.com/p/554149581 Stop调度器,stop_sched_class:优先级最高的调度类,可以抢占其他所有的进程,但不能被其他进程抢占。用于
2025-04-07 q1ming
2 / 3