V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
yyzh
V2EX  ›  信息安全

libarchive 也存在一些由 Jia Tan 提交的可疑代码

  •  1
     
  •   yyzh · 266 天前 · 4859 次点击
    这是一个创建于 266 天前的主题,其中的信息可能已经有所发展或是发生改变。
    15 条回复    2024-04-01 11:06:17 +08:00
    Sayuri
        1
    Sayuri  
       266 天前
    我感觉这里并没有引入恶意的什么代码。

    只是因为这个人做的事情让大家失去信任了。
    xiaozecn
        2
    xiaozecn  
       266 天前
    @Sayuri 可能尚未来得及引入🤣
    lisxour
        3
    lisxour  
       266 天前   ❤️ 3
    @Sayuri 不对吧,虽然我不懂这个项目和 c ,但是他直接将 safe_fprintf 换成 fprintf ,确定没问题?
    GenericT
        4
    GenericT  
       266 天前
    @lisxour strerror 给的东西是 libc 传过来的,本身就是安全的
    daveh
        5
    daveh  
       266 天前   ❤️ 3
    @Sayuri GenericT #1 #4
    safe_fprintf 改 fprintf 确实很可疑,真没这个必要改,对代码功能来讲真没啥鸟用。

    但是正是这种改动,让人看不到攻击者的真实意图。
    理论上讲这个改动其实是有问题的,这要从这次 xz/sshd 漏洞利用的原理上讲,主要这个 IFUNC 机制,感兴趣上网找找理解一下。
    简单讲,safe_fprintf 并不是什么标准库或三方库的函数,可能是自己写的,编译优化、符号隐藏、剥离调试信息、strip 等等,都会让程序运行时,根本看不到什么 safe_fprintf ,IFUNC 也无法替换它;而 fprintf 不同,它是标准库函数,能被 IFUNC 替换掉。
    攻击者可能不想让用户看到一些莫名其妙或不相干的错误输出,他就可以通过 IFUNC 机制截获 fprintf ,修改输出内容,从而达到隐藏自己的目的。
    seers
        6
    seers  
       266 天前 via iPhone
    换成 std 库的符号就可以 plt hook 了
    est
        7
    est  
       266 天前
    所以 IFUNC 这玩意是干嘛的。?
    gsfish
        8
    gsfish  
       266 天前   ❤️ 4
    苦心经营多年,在最后关头给人发现了,泪目
    Aloento
        9
    Aloento  
       266 天前
    @est #7 间接函数,创建对一个既有函数的多个实现,在运行时来选择具体的某个实现
    est
        10
    est  
       266 天前
    @Aloento 听上去。。很容易出问题的样子。。。
    GenericT
        11
    GenericT  
       265 天前 via Android
    @daveh 你在说啥呢,这是个自己写的函数,你去看下实现啊,内部还是调 fprintf 的,你说的这些完全不成立
    daveh
        12
    daveh  
       265 天前 via iPhone
    @GenericT #11 这哪一样啊?虽然都是 fprintf ,但是传参可能不一样,写 hook 最好要原始输入参数,变化后 hook 不好写。
    GenericT
        13
    GenericT  
       265 天前 via Android
    @daveh 他都能任意代码执行了,他还需要管啥参数吗
    luozic
        14
    luozic  
       265 天前
    gcc 编译器下面才可用,使用的是 gcc 的一个 feature ?
    jackleeforce3615
        15
    jackleeforce3615  
       264 天前
    凡是此人的 PR/MR ,都得拉出来讨论或者干脆回滚,太危险了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2380 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 02:28 · PVG 10:28 · LAX 18:28 · JFK 21:28
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.