Shellcode:修订间差异
外观
删除的内容 添加的内容
R888800009(留言 | 贡献) |
|||
(未显示6个用户的11个中间版本) | |||
第1行: | 第1行: | ||
{{ |
{{Unreferenced|time=2021-11-02T05:59:44+00:00}} |
||
{{信息安全}} |
|||
{{orphan|time=2015-12-14T06:49:39+00:00}} |
|||
shellcode是一段用于利用软件漏洞而执行的代码,shellcode為16進位之機械碼,以其经常让攻击者获得shell而得名。shellcode常常使用机器语言编写。 |
shellcode是一段用于利用软件[[漏洞]]而执行的代码,shellcode為16進位之機械碼,以其经常让攻击者获得[[殼層|shell]]而得名。shellcode常常使用[[机器语言]]编写,由於現代電腦系統基本上啟用[[NX位元]]保護使得機械碼無法直接執行,可透過[[返回導向編程]]編寫shellcode。 |
||
可在暫存器eip溢出後,塞入一段可讓CPU執行的shellcode機械碼,讓電腦可以執行攻擊者的任意指令。 |
可在暫存器eip溢出後,塞入一段可讓CPU執行的shellcode機械碼,讓電腦可以執行攻擊者的任意指令。 |
||
第8行: | 第8行: | ||
===本地shellcode=== |
===本地shellcode=== |
||
本地运行的shellcode经常用于利用软件[[漏洞]]提升权限。比如在Linux下由普通权限提升至root权限。 |
本地运行的shellcode经常用于利用软件[[漏洞]]提升权限。比如在Linux下由普通权限提升至[[root权限]]。 |
||
===远程shellcode=== |
===远程shellcode=== |
||
通過使用抓包程式抓取封包并查找封包内的漏洞特徵,再經由C、Python、ruby ([[metasploit]])撰寫遠端攻擊程式,這類漏洞如果發生在[[內核空間]],如路由器等[[嵌入式系統]]上的[[可載入核心模組]],或是[[伺服器訊息區塊]]協議的實作漏洞,如[[永恆之藍]],則可以取得對方電腦之root或SYSTEM權限。如果漏洞發生在[[用戶空間]]的程式,只能取得此[[處理程序]]的使用者權限,除非在本地運行[[特權提升]]漏洞利用,或是程序本身就有root權限。 |
|||
藉由抓軟體漏洞獲得特定的shellcode,再經由C或Python撰寫遠端攻擊程式,進而取得對方電腦之root權限。 |
|||
[[Category:保全漏洞]] |
[[Category:保全漏洞]] |
||
[[Category:注入漏洞]] |
[[Category:注入漏洞]] |
||
{{Computer software-stub}} |
|||
{{stub}} |
2024年7月17日 (三) 04:49的最新版本
此條目没有列出任何参考或来源。 (2021年11月2日) |
系列條目 |
資訊安全 |
---|
相關安全分類 |
威脅 |
防禦 |
shellcode是一段用于利用软件漏洞而执行的代码,shellcode為16進位之機械碼,以其经常让攻击者获得shell而得名。shellcode常常使用机器语言编写,由於現代電腦系統基本上啟用NX位元保護使得機械碼無法直接執行,可透過返回導向編程編寫shellcode。 可在暫存器eip溢出後,塞入一段可讓CPU執行的shellcode機械碼,讓電腦可以執行攻擊者的任意指令。
分类
[编辑]shellcode可以按照攻击者执行的位置分为本地shellcode和远程shellcode.
本地shellcode
[编辑]本地运行的shellcode经常用于利用软件漏洞提升权限。比如在Linux下由普通权限提升至root权限。
远程shellcode
[编辑]通過使用抓包程式抓取封包并查找封包内的漏洞特徵,再經由C、Python、ruby (metasploit)撰寫遠端攻擊程式,這類漏洞如果發生在內核空間,如路由器等嵌入式系統上的可載入核心模組,或是伺服器訊息區塊協議的實作漏洞,如永恆之藍,則可以取得對方電腦之root或SYSTEM權限。如果漏洞發生在用戶空間的程式,只能取得此處理程序的使用者權限,除非在本地運行特權提升漏洞利用,或是程序本身就有root權限。
这是一篇與软件相關的小作品。您可以通过编辑或修订扩充其内容。 |