lua

linux 系统queue漏洞

#define TAILQ_REMOVE(head, elm, field) do {             \
    
if (((elm)->field.tqe_next) != NULL)                \
        (elm)
->field.tqe_next->field.tqe_prev =         \
            (elm)
->field.tqe_prev;              \
    
else                                \
        (head)
->tqh_last = (elm)->field.tqe_prev;       \
    
*(elm)->field.tqe_prev = (elm)->field.tqe_next;         \
while (/*CONSTCOND*/0)
*(elm)->field.tqe_prev = (elm)->field.tqe_next;
此行会造成crash,因为TAILQ_REMOVE认为删除的节点一定是在队列中,在删除非队列节点会宕机

posted on 2009-05-08 22:38 chib 阅读(1232) 评论(2)  编辑 收藏 引用

评论

# re: linux 系统queue漏洞 2009-05-09 22:17 11

。。。。。。。。。。。
晕倒 博主 这个不能算漏洞 是你使用错误
如果这算漏洞,那到处都是漏洞  回复  更多评论   

# re: linux 系统queue漏洞 2009-05-10 12:49 chib

@11
感觉这个在设计时候可以避免的。  回复  更多评论   


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   博问   Chat2DB   管理


<2011年3月>
272812345
6789101112
13141516171819
20212223242526
272829303112
3456789

导航

统计

常用链接

留言簿(1)

随笔档案

牛人录

时政史料

投资管理

源码库

搜索

最新评论

阅读排行榜

评论排行榜