緝拿隱藏程序以及隱藏CPU利用率的程序

2021-10-23 21:03:05 字數 2619 閱讀 6520

前面我介紹過很多隱藏程序的把戲,隨後我對每一種把戲有針對性的給出了反制措施,可以翻看我2020/03~2020/08的文章,太多了,不再一一枚舉。

如今,我要介紹一種超級簡單的手段,手藝人必備。

無論你是隱藏了程序,還是隱藏了程序的cpu利用率,只要它在cpu上執行,在下面的指令碼面前,任何隱藏手段終歸徒勞:

#!

/usr/local/bin/stap

global tbase

global tdelta

probe scheduler.cpu_on

probe scheduler.cpu_off

}probe timer.

ms($1

)// 結束時將這段時間內所有執行程序的cpu累加時間按照降序列印。

probe end

}

是的,只要你的程序執行,總逃不過核心的排程,只要程序獲得cpu就會打點取樣,程序被切換下來時再次打點取樣,二者做差就是該程序本次執行的時間,將這些時間累加起來就能獲得任意程序占有cpu的時間。

除非你的程序不在cpu上執行,不過不執行的程序又有啥用呢…

來來來,看效果:

[root@localhost test]

# /root/loop &

[1] 5814

[root@localhost test]

# /root/loop &

[2] 5815

[root@localhost test]

#[root@localhost test]

# ./times.stp 5000 # 取樣5秒

loop[5814]

= 2492109

loop[5815]

= 2490044

top[5919]

= 1417

kworker/0:1[31879]

= 1218

stapio[7125]

= 1191

xfsaild/dm-0[397]

= 1028

tuned[1003]

= 744

systemd-udevd[7126]

= 397

sshd[1384]

= 174

systemd-udevd[496]

= 157

rcuos/0[11]

= 105

systemd[1]

= 105

kworker/0:2[6831]

= 82

systemd-logind[645]

= 62

rcu_sched[10]

= 43

kworker/u2:2[285]

= 7watchdog/0[12]

= 7ksoftirqd/0[3]

= 3[root@localhost test]

#

一抓乙個準。

來,現在基於上述原理幹點正事兒。

這回我們不再為了緝拿誰而編寫指令碼,這回我們假裝為了優化排程器演算法。

我們要統計一下所有程序從排入就緒佇列到實際執行的等待時間,用以排查是否有程序飢餓。

#!

/usr/local/bin/stap

global tbase

global tdelta

probe kernel.

function

("activate_task"

)probe scheduler.cpu_on

}probe timer.

ms($1

)probe end

}

來來,看效果:

[root@localhost test]

# ./wtime.stp 5000

stapio[7727]

= 1034

rcuos/0[11]

= 747

systemd-udevd[7728]

= 244

kworker/0:1[31879]

= 236

tuned[1003]

= 159

khungtaskd[24]

= 80

rcu_sched[10]

= 64

systemd-udevd[496]

= 58

khugepaged[27]

= 20

kworker/u2:2[285]

= 20

watchdog/0[12]

= 18

auditd[609]

= 18

kworker/0:0[7139]

= 12

[root@localhost test]

#

最後,值得注意的是,stap的操作開銷巨大,二元健陣列內部實現很複雜,且cpu_on/cpu_off是系統中絕對絕對絕對的熱點熱點熱點路徑!以上手段僅僅用於發現系統異常,並非常規操作,應該嚴禁在生產環境長時間執行。

當然,經理除外。

浙江溫州皮鞋溼,下雨進水不會胖。

Linux程序隱藏問題 顯示隱藏程序

阿里云云監控到有兩台redis伺服器cpu被某程序消耗400 cpu資源 系統檢視top 情況並未找到高消耗程序x7但cpu100 ni netstat 查詢到了一些異常請求,初步判斷出元件被提權入侵了 嘗試查詢異常程序x7關聯的檔案,排查還在 etc hosts發現增加了如下異常對映,檢視相關異常...

WinNT下 真正隱藏程序

面對眾多的計算機高手,考慮許久,終於還是決定出來獻醜一下,文章內盡量使用最簡潔易懂的詞彙及例子來介紹,希望能夠對一些初學與高階者有所幫助。關於程序的隱藏,98下的例子數不勝數。winnt win2k下的隱藏方法,西祠的高手shotgun在去年的6月就已經在網上發布出例項 揭開木馬的神秘面紗 四 我也...

linux 隱藏程序 crux實現

本文在不修改ps或top命令的任何 與採用將程序號置0的方法的前提下,實現隱藏程序,本程式在crux 2.2上實現 1 原理 linux中,可以通過 proc檔案系統訪問到許多核心的內部資訊。proc檔案系統最初的設計也是用於方便地訪問程序相關的資訊,因此命名為proc。現在這個檔案系統已用於反映系...