<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 403, comments - 310, trackbacks - 0, articles - 7
      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

    Hacking the Kernel - 修改系統調用表

    Posted on 2008-02-19 14:55 ZelluX 閱讀(755) 評論(0)  編輯  收藏 所屬分類: LinuxSystem
    昨天硬是沒找到正確的sys_call_table的地址,原來我之前在虛擬機上裝的ArchLinux是64位的。。
    今天在真機上成功地修改了系統調用表。
    測試環境:ArchLinux 2.6.24

    1. 2.4.20以后的內核出于安全考慮,沒有導出sys_call_table符號,所以要先通過System.map找到sys_call_table的地址
    $ cat /boot/System.map26 | grep sys_call_table
    c0375680 R sys_call_table
    另外也可以用nm工具獲得vmlinux中的所有符號
    $ nm /usr/src/linux-2.6.24-ARCH/vmlinux | grep sys_call_table
    結果一樣

    2. 以添加一個把uid改成root(0)為例,寫一個內核模塊:
    addcall.c

    對應的Makefile:

    3. 使用insmod addcall.ko載入模塊后,用dmesg可以看到the call has been added.
    4. 測試程序
    test.c

    使用gcc -o test test.c編譯

    5. 運行./test,即可看到類似的成功信息:
    Previous uid = 1002
    Current uid = 0

    6. 卸載模塊rmmod addcall,此時再次運行./test就會失敗
    主站蜘蛛池模板: 日韩毛片在线免费观看| 亚洲av中文无码乱人伦在线r▽ | 免费观看的毛片手机视频| 亚洲精品视频在线观看免费| 久久永久免费人妻精品| 亚洲Av综合色区无码专区桃色| a级成人免费毛片完整版| 久久久久久a亚洲欧洲aⅴ| 一个人免费日韩不卡视频| 久久综合亚洲鲁鲁五月天| 222www在线观看免费| 亚洲男女一区二区三区| 国拍在线精品视频免费观看| 亚洲无吗在线视频| 精品剧情v国产在免费线观看| 亚洲av无码有乱码在线观看| 国产免费直播在线观看视频| 又硬又粗又长又爽免费看 | 免费国产黄线在线观看| 亚洲国产一区二区三区在线观看| 免费无码AV片在线观看软件| 国产精品久久亚洲一区二区| 中文字幕亚洲第一| 日韩电影免费在线观看| 亚洲六月丁香六月婷婷色伊人| 成人免费毛片观看| 一级成人a做片免费| 亚洲AV乱码久久精品蜜桃| 国产成人午夜精品免费视频| 色偷偷噜噜噜亚洲男人| 亚洲综合激情另类专区| 99re免费视频| 精品久久久久亚洲| 亚洲一区二区电影| 在线jyzzjyzz免费视频| www.xxxx.com日本免费| 亚洲国产成人精品青青草原| 免费一看一级毛片人| 十九岁在线观看免费完整版电影| 一本色道久久综合亚洲精品蜜桃冫 | 三年片在线观看免费观看大全动漫|