<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 :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

    Hacking the Kernel - 修改系統(tǒng)調(diào)用表

    Posted on 2008-02-19 14:55 ZelluX 閱讀(754) 評(píng)論(0)  編輯  收藏 所屬分類: LinuxSystem
    昨天硬是沒(méi)找到正確的sys_call_table的地址,原來(lái)我之前在虛擬機(jī)上裝的ArchLinux是64位的。。
    今天在真機(jī)上成功地修改了系統(tǒng)調(diào)用表。
    測(cè)試環(huán)境:ArchLinux 2.6.24

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

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

    對(duì)應(yīng)的Makefile:

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

    使用gcc -o test test.c編譯

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

    6. 卸載模塊rmmod addcall,此時(shí)再次運(yùn)行./test就會(huì)失敗
    主站蜘蛛池模板: 国产精品成人69XXX免费视频| 亚洲a级成人片在线观看| 相泽南亚洲一区二区在线播放| 日韩免费一区二区三区在线 | 国内精自视频品线六区免费| 亚洲∧v久久久无码精品| 中国一级特黄高清免费的大片中国一级黄色片 | 无遮免费网站在线入口| 亚洲国产美女视频| 日韩免费精品视频| 亚洲中文字幕无码av永久| 四虎影视免费在线| 亚洲熟伦熟女专区hd高清| 日本特黄特色免费大片| 亚洲av无码专区在线电影| 夫妻免费无码V看片| 亚洲成av人在线观看网站| 日本a级片免费看| 免费无码一区二区| 亚洲精品一品区二品区三品区| 黄色片免费在线观看| 亚洲欧洲日本精品| 免费视频中文字幕| 一个人看的www视频免费在线观看| 亚洲精品亚洲人成在线观看| 亚洲免费精彩视频在线观看| 亚洲成AV人片久久| 成人免费无码大片A毛片抽搐| 男男gay做爽爽的视频免费| 国产成人高清亚洲| 好男人资源在线WWW免费| 亚洲精品成人无码中文毛片不卡| 国产午夜精品久久久久免费视| 亚洲中文字幕无码av在线| 免费国产一级特黄久久| 99久久成人国产精品免费| 亚洲av乱码一区二区三区| 亚洲A∨午夜成人片精品网站| 国产白丝无码免费视频| 亚洲av中文无码字幕色不卡| 亚洲乱码一区二区三区在线观看|