<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="/rss.xsl" type="text/xsl"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>今天又看了啥 | 笨蛋三月七的日常</title><description>互联网搬💩集散地BGP 分频: @bakanetwork内频：https://t.me/+KeNZttiOmFtlZjE1「愿你在未来与我的既往重逢」</description><link>https://timeline.byteloid.one</link><item><title>#今天又看了啥 #security #CVE #dockerCVE-2026-33590 — Portainer 默认配置不安全导致宿主机接管CVSS 3.1 8.2 HIGHPortainer &lt; 2.38.0 的 Endpoint Security 默认配置过度宽松，允许普通用户（非管理员）在创建容器时启用 bind mount、privileged mode、host namespace 等高危能力，攻击者可借此挂载宿主机文件系统或以特权模式运行容器，实现从容器逃逸到宿主机的完全接管</title><link>https://timeline.byteloid.one/posts/2734</link><guid isPermaLink="true">https://timeline.byteloid.one/posts/2734</guid><pubDate>Sun, 14 Jun 2026 06:18:18 GMT</pubDate><content:encoded>&lt;a href=&quot;/search/%23%E4%BB%8A%E5%A4%A9%E5%8F%88%E7%9C%8B%E4%BA%86%E5%95%A5&quot;&gt;#今天又看了啥&lt;/a&gt; &lt;a href=&quot;/search/%23security&quot;&gt;#security&lt;/a&gt; &lt;a href=&quot;/search/%23CVE&quot;&gt;#CVE&lt;/a&gt; &lt;a href=&quot;/search/%23docker&quot;&gt;#docker&lt;/a&gt;&lt;br /&gt;&lt;b&gt;CVE-2026-33590 — Portainer 默认配置不安全导致宿主机接管&lt;/b&gt;&lt;br /&gt;CVSS 3.1 &lt;b&gt;8.2 HIGH&lt;/b&gt;&lt;br /&gt;Portainer &amp;lt; 2.38.0 的 Endpoint Security 默认配置过度宽松，允许普通用户（非管理员）在创建容器时启用 bind mount、privileged mode、host namespace 等高危能力，攻击者可借此挂载宿主机文件系统或以特权模式运行容器，实现从容器逃逸到宿主机的完全接管。&lt;br /&gt;&lt;blockquote&gt;&lt;b&gt;默认开启的危险配置项（共 7 项）&lt;/b&gt;：&lt;br /&gt;- allowBindMountsForRegularUsers — 允许挂载宿主机任意路径&lt;br /&gt;- allowPrivilegedModeForRegularUsers — 允许特权模式&lt;br /&gt;- allowHostNamespaceForRegularUsers — 允许共享宿主机 PID/IPC namespace&lt;br /&gt;- allowDeviceMappingForRegularUsers — 允许访问宿主机设备&lt;br /&gt;- allowContainerCapabilitiesForRegularUsers — 允许选择 root capabilities&lt;br /&gt;- allowSysctlSettingForRegularUsers — 允许 sysctl 操作&lt;br /&gt;- allowStackManagementForRegularUsers — 允许 compose stack 管理&lt;br /&gt;&lt;br /&gt;&lt;b&gt;PoC&lt;/b&gt;：以普通用户身份认证 → 找到本地 Docker endpoint → 用 alpine 镜像 bind mount 宿主机 /etc/ → 直接读取 /etc/shadow。&lt;br /&gt;&lt;br /&gt;&lt;b&gt;修复&lt;/b&gt;：升级至 2.38.0（STS）或 2.39.0（LTS），以上配置项默认改为 false（仅 stack 管理保留 true）。升级后需手动检查 Docker Security Settings。&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;说人话：&lt;/b&gt;&lt;br /&gt;&lt;blockquote&gt;Portainer 老版本有个问题：&lt;b&gt;管理员给你建了个普通账号，你能自己开个容器把整台宿主机的硬盘挂进去&lt;/b&gt;，然后随便翻文件、读密码、写 crontab——等于直接拿下宿主机 root。&lt;br /&gt;原因是 Portainer 默认把 7 个高危开关全部打开了，比如&quot;允许普通用户挂载宿主机目录&quot;&quot;允许特权模式&quot;。&lt;br /&gt;&lt;b&gt;你需要升级版本&lt;/b&gt;，然后去 Settings → Docker Security Settings 确认那些开关都关了。如果你是多人共用的 Portainer 实例，建议顺便审一下历史容器有没有被滥用过。&lt;/blockquote&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;🔗&lt;/b&gt;&lt;/i&gt; &lt;a href=&quot;https://intwave.com/blog/2026/02/26/improving-portainer-security.html&quot; target=&quot;_blank&quot;&gt;技术分析博文&lt;/a&gt; · &lt;a href=&quot;https://intwave.com/advisory/2026/06/12/cve-2026-33590-portainer.html&quot; target=&quot;_blank&quot;&gt;安全公告&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;感觉这个漏洞本质上是个设计缺陷而非代码 bug，默认信任用户不会滥用容器特权，不过在多用户环境下还是有很大风险。&lt;a href=&quot;https://intwave.com/blog/2026/02/26/improving-portainer-security.html&quot; target=&quot;_blank&quot;&gt;
  
  &lt;div&gt;Intwave&lt;/div&gt;
  
  &lt;div&gt;Improving Portainer Security&lt;/div&gt;
  &lt;div&gt;Product Security Services&lt;/div&gt;
&lt;/a&gt;</content:encoded></item><item><title>#今天又看了啥 #security io_uring ZCRX Freelist LPE — 从 u32 到 root  -- ze3tar</title><link>https://timeline.byteloid.one/posts/2139</link><guid isPermaLink="true">https://timeline.byteloid.one/posts/2139</guid><pubDate>Sat, 09 May 2026 05:08:36 GMT</pubDate><content:encoded>&lt;a href=&quot;/search/%23%E4%BB%8A%E5%A4%A9%E5%8F%88%E7%9C%8B%E4%BA%86%E5%95%A5&quot;&gt;#今天又看了啥&lt;/a&gt; &lt;a href=&quot;/search/%23security&quot;&gt;#security&lt;/a&gt; &lt;br /&gt;&lt;b&gt;io_uring ZCRX Freelist LPE — 从 u32 到 root&lt;/b&gt;  -- ze3tar&lt;br /&gt;&lt;a href=&quot;https://ze3tar.github.io/post-zcrx.html&quot; target=&quot;_blank&quot;&gt;https://ze3tar.github.io/post-zcrx.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;漏洞概要&lt;/b&gt;&lt;br /&gt;- Linux 6.15~6.19 中 io_uring 新子系统 ZCRX（零拷贝收包）存在 &lt;b&gt;OOB（越界）堆写入&lt;/b&gt;漏洞&lt;br /&gt;- 漏洞位置：&lt;code&gt;freelist[]&lt;/code&gt; 管理空槽索引时，&lt;code&gt;free_count&lt;/code&gt; 无上界检查，导致写入 &lt;code&gt;freelist[num_niovs]&lt;/code&gt;（超尾 4 字节）&lt;br /&gt;- 写入值：niov 索引，范围 [0, N-1] —— 看似没用，实则致命&lt;br /&gt;&lt;br /&gt;&lt;b&gt;触发条件&lt;/b&gt;&lt;br /&gt;- 需要 &lt;b&gt;CAP_NET_ADMIN&lt;/b&gt; 权限&lt;br /&gt;- 需要支持 ZCRX 的物理网卡（Mellanox ConnectX-6+、Intel E800、NFP 等）&lt;br /&gt;- 触发方式：网卡 down（&lt;code&gt;SIOCSIFFLAGS ~IFF_UP&lt;/code&gt;）→ &lt;code&gt;page_pool_destroy()&lt;/code&gt; → 两条路径（ptr_ring drain + scrub loop）重复入栈导致 &lt;code&gt;free_count&lt;/code&gt; 溢出&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;b&gt;利用链&lt;/b&gt;&lt;br /&gt;1. &lt;b&gt;选择 area 大小&lt;/b&gt; → 控制 num_niovs → 控制 freelist 所在的 slab cache → 控制相邻对象&lt;br /&gt;2. &lt;b&gt;堆喷 msg_msg&lt;/b&gt;（kmalloc-128）→ 让 freelist 与 msg_msg 相邻&lt;br /&gt;3. &lt;b&gt;触发 OOB&lt;/b&gt; → 覆盖相邻 msg_msg 的 &lt;code&gt;m_list.next&lt;/code&gt; 低 4 字节&lt;br /&gt;4. &lt;b&gt;msgrcv 堆读取&lt;/b&gt; → 扫描内核指针 → 破解 KASLR&lt;br /&gt;5. &lt;b&gt;写 modprobe_path&lt;/b&gt;（通过 &lt;code&gt;/proc/sys/kernel/modprobe&lt;/code&gt;）→ 指向恶意脚本&lt;br /&gt;6. &lt;b&gt;触发未知 socket 协议&lt;/b&gt; → &lt;code&gt;call_usermodehelper&lt;/code&gt; → 提权为 root&lt;br /&gt;&lt;br /&gt;&lt;b&gt;修复&lt;/b&gt;&lt;br /&gt;- commit &lt;code&gt;770594e&lt;/code&gt;（2026-04-21），在 &lt;code&gt;io_zcrx_return_niov_freelist&lt;/code&gt; 中增加 &lt;code&gt;free_count &amp;gt;= num_niovs&lt;/code&gt; 检查&lt;br /&gt;- 尚未合入任何 stable 分支，仍在路上的内核均有风险&lt;br /&gt;&lt;br /&gt;&lt;b&gt;PoCs 已公开&lt;/b&gt;&lt;br /&gt;- &lt;code&gt;zcrx_crash.c&lt;/code&gt; — 纯 OOB 触发验证&lt;br /&gt;- &lt;code&gt;zcrx_lpe.c&lt;/code&gt; — 完整 LPE 利用链（KASLR + modprobe_path + SUID bash）&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;一句话：&lt;b&gt;io_uring 新版 ZCRX 没做边界检查，网卡 down 时重复入栈写穿 slab，一个 0~31 的小整数一路打到 root。&lt;/b&gt; &lt;i&gt;&lt;b&gt;🔥&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;需要高端网卡，散了散了</content:encoded></item></channel></rss>