好的,首先,每个人都呼吸。每个人都吓坏了。这不是这样做的方法。
是的,所以,让我在这里尝试一个半途而废的类比。有一个日托中心,很多人送孩子去那里。然后有一天,有人发现他们用最锋利的材料建造了游乐场。这并不是说游乐场是 70 年代的东西。这是相对较新的。
我就是这么说的:“也许你不想把孩子送到那里”。
所以,这是一个不好的类比,因为我没有详细说明。在这种情况下,我希望世界有机会在了解一切可能性之前关闭这些东西。这类事情的本质意味着这是一场竞赛,出于某种原因我站在保护机器一边,所以我要求人们停止运行它。
现在,首先,我不知道如何利用这种东西。我在 90 年代就在那里,当时这种溢出的东西开始流行,我很确定如果你能做到这一点,你可以做得更糟。
这就是我要说的:
1 号航站楼:
user1$ 随机工具
2 号航站楼:
user2$ 位于顶部 malloc():损坏的顶部大小 中止
……这很糟糕,对吧?
所以你稍微调整一下这个工具,然后再次……
user2$ 位于顶部 分段错误
这也不太好!
或者……怎么样……
user2$ 位于顶部 致命 glibc 错误:sysmalloc 中的 malloc 断言失败:(old_top == initial_top (av) && old_size == 0) || ((unsigned long) (old_size) >= MINSIZE && prev_inuse (old_top) && ((unsigned long) old_end & (pagesize - 1)) == 0)
再说一次,这不是我的世界。我从来没有写过堆漏洞利用程序,但是简单地阅读它让我觉得这些骨头上有肉。
user1 做了某事…并导致 user2 爆炸。如果你能让它做一些有用的事情,那么你就可以让 user2 代表你运行一些东西。
如果 user2 是 root 怎么办?然后你就拥有了这个盒子。
好的?因此,也许停止以 root 身份运行它,但也停止运行它。