[閒聊] 2017.W20 - Remote Code Execution

作者: CMJ0121 (請多指教!!)   2017-05-16 22:49:03
2017.W20 - Remote Code Execution (RCE)
> 趁著 MS-2017-010 的問題來介紹
## 前言 ##
在上禮拜的聚會中 跟朋友聊到了一些資安名詞
他們在爭執一些惡意軟體[0]到底是被歸類在後門[1]還是木馬[2]
其實像是這些名詞在惡意軟體當中 都代表著一個相對應的功能
但現在 21 世紀了 很多惡意軟體功能已經包山包海 很難用單一種功能來描述
像是後門通常指的是一個軟體 可以藉由特定的操作登入道系統當中
而木馬指的是一個偽裝成正常程式的惡意軟體
通常一個木馬帶有後門的功能 但也可以只含有上傳資料到 C&C 伺服器
另一方面 也曾經出現過硬體後門這種非軟體的惡意設計
## 內容 ##
Remote Code Execute 或者簡稱為 RCE 是安全漏洞中的一個分類
在 CVE Detail[3] 中被歸類在 Code Execution 當中
Code Execution 是一個嚴重的安全性漏洞 - 可以執行任意代碼也 (幾乎) 能做任何事
在軟體的世界當中 所有的操作都可以用相對的機械碼完成
而一個程式語言執行的目的 也就是執行相對的機械碼
RCE 的含義在於可以*[1;31m遠端執行一段程式碼
這跟 SQL Injection (僅限於執行 SQL 操作) 大多數的危害都是可以 Dump DB
也就是獲得極敏感的資料從伺服器端
或是 Dos / DDoS 只能將服務中斷 讓使用者感到極度不方面
RCE 原則上都可以做到上面的事情
1. 可以執行 SQL 指令 > mysql -c "DROP TABLE [TABLE NAME]"
2. 重開機 > reboot
最嚴重的 RCE (像是這次的 MS2017-010[4]) 都包含以下的特性:
1. 不需要認證 (Unauthenticated)
2. 執行任意指令 (Code Execution)
3. 高權限
不需要認證也就是只要能夠碰觸 (touch) 到這個漏洞就可以執行任意指令
高權限也代表著執行的指令擁有最高權限 攻擊者不需要思考如何提權[5]
[0]: https://zh.wikipedia.org/zh-tw/%E6%81%B6%E6%84%8F%E8%BD%AF%E4%BB%B6
[1]: https://en.wikipedia.org/wiki/Backdoor_(computing)
[2]: https://en.wikipedia.org/wiki/Trojan_horse_(computing)
[3]: http://www.cvedetails.com/vulnerabilities-by-types.php
[4]: https://technet.microsoft.com/en-us/library/security/ms17-010.aspx
[5]: https://en.wikipedia.org/wiki/Privilege_escalation
作者: asimon (逞˙強)   2017-05-17 16:13:00
頭推!
作者: weiray   2017-05-17 22:30:00
跟推!
作者: sam613 (Hikaru)   2017-05-21 04:55:00
遠端執行程式碼不一定會是最高權限,有時候是使用者登入帳號的權限,使用者登入帳號的權限越低傷害越小
作者: CMJ0121 (請多指教!!)   2017-05-21 20:15:00
RCE 不一定有最高權限這當然 但是問題只變成需要提權比找到 RCE 簡單多了
作者: hmj (= 王傑 瘋子 賣到缺貨 =)   2017-06-12 00:00:00
作者: zenki1202 (*~啦小喵~*)   2017-06-14 16:04:00
其實從CVSS score上就可以大略知道RCE的影響
作者: skycat2216 (skycat2216)   2017-08-12 10:12:00
程式碼處決?

Links booklink

Contact Us: admin [ a t ] ucptt.com