偽裝在系統PAM配置文件中的同形異義字後門
* 原創作者:fnpimr43017,本文屬FreeBuf原創獎勵計劃,未經許可禁止轉載
0x00. 前言
受到FreeBuf早前相關同形異體字攻擊文章的啟發,故有此文。
目前主流的Linux發行版本都支持Unicode,這也給了利用同形異義字迷惑系統管理員的後門有了可乘之機。 本文通過案例描繪此類漏洞是如何實現的。
0x01. 同形異義字後門案例
我們看一下 ssh 的 pam 認證模塊
注意第一行
@ include common-auth
我們再看一下
common-auth
注意紅框圈的那一行
auth [success=1 default=ignore] pam_unix.so nullok_secure
pam_unix.so
是用於校驗用戶的的賬戶和密碼是否正確,如果賬號密碼正確,則直接返回,不執行下一行,否則執行下一行。auth requisite pam_de?y.so
關於
requisite
的含義解釋如下:因為
pam_deny.so
模塊會返回失敗, 加上這行的控制標記是requisite,所以系統會直接拒絕用戶登錄。我們知道與
pam_deny.so
模塊對應的就是pam_permit.so
, 如果我們能把auth requisite pam_de?y.so
更改為
auth requisite pam_permit.so
則任意密碼都可以登錄成功,但這裡也有個問題
pam_permit.so 很容易被管理員發現啊,畢竟pam_permit.so 和pam_deny.so 看起來就不一樣嘛
所以這裡要用到本文所述Unicode 的同形異義字來將pam_permit.so 偽裝起來,使其看起來像pam_deny.so
1、先把 pam_deny.so 備份
2、然後利用 Unicode 同形異義字 將 pam_permit.so 偽裝成 pam_deny.so
root@kali:~# cp /lib/x86_64-linux-gnu/security/pam_permit.so /lib/x86_64-linux-gnu/security/pam_de$"u578"y.so
偽裝後的 pam_de?y.so , 紅圈所示, 不留心仔細觀察,很難分辨真偽
3、然後修改 /etc/pam.d/common-auth 中的 pam_deny.so 為 偽裝的pam_de?y.so
root@kali:~# perl -i -pe"s/deny/dex{578}y/" /etc/pam.d/common-auth
查看一下修改後的common_auth (紅框所示)
不仔細觀察,不好辨真偽
4、修改後,登錄測試,看看能否可以實現任意密碼登錄
隨便輸入密碼
點擊『確定』
成功登錄
我們看一下登錄日誌 ( /var/log/auth.log )
我們可以看出,雖然 pam_unix.so 認證失敗,但是 最終還是登錄成功(因為偽裝的 pam_de?y.so 起了作用)
0x02. 總結
雖然偽裝的 pam_de?y.so 和真正的 pam_deny.so 看起來一樣,但實際上是不同的兩個文件,要區分它也很簡單, 總結以下方法:
1、直接使用 file 或者 locate 命令查看 pam_deny.so 是否存在
2、系統安裝後給所有的文件做 hash, 然後對比 hash
3、查看登錄日誌 (比如 /var/log/auth.log )
如果發現 pam_unix 認證失敗,仍能登錄成功,則必須警惕 pam_deny.so 是否已經被調包
4、如果發現任意密碼均可登錄,則要警惕 pam_deny.so 是否已經被調包
* 原創作者:fnpimr43017,本文屬FreeBuf原創獎勵計劃,未經許可禁止轉載
※有關Petya勒索軟體,你想知道的都在這裡
※我是如何輕鬆拿到Google $1337現金獎勵的
※各國被黑客泄露的信息都是真的嗎?揭秘真相森林中的重重謊言
TAG:FreeBuf |
※CSV配置文件的優化策略
※LAMP建站時配置文件寫法實例
※SSM框架整合裡面的一些配置文件
※什麼是LOG調色法?如何使用ACR插件配置文件完成一鍵調色?
※MySQL-默認配置文件
※C 配置文件存儲 各種序列化演算法性能比較
※Linux 中網路相關的那些配置文件
※MyBatis配置文件詳解
※快速自定義Cordova插件(-配置文件)
※有黑客試圖將Windows 10 設置應用的配置文件武器化
※Mybatis配置文件
※配置文件|logstash配置文件詳解
※華為P30系列機型配置文件曝光 屏幕解析度確定
※技術分享:屬性配置文件詳解
※華為P30系列用戶代理配置文件被曝光?
※Creo/Preo軟體自學第二篇:部分配置文件在config中路徑的設置
※運維之路-完整的ELK搭建全過程和配置文件
※Jenkins配置文件路徑改動導致管理員許可權開放漏洞
※SpringMVC工程的web.xml以及其他配置文件
※意法半導體推出新一代智能物品安全晶元,配備歐洲市政設施認證保護配置文件