親手打造一個QQ惡作劇程序
發表時間:2024-01-04 來源:明輝站整理相關軟件相關文章人氣:
[摘要]安全警示 僅供娛樂參考,不承擔該程序使用的相應后果和責任 時間:2002年11月26日 Author:Inetufo Email:
[email protected] Homepagehttp://www.thugx.com Date:3-8-2003 本文將一步一步教你如何編寫一個QQ...
安全警示 僅供娛樂參考,不承擔該程序使用的相應后果和責任
時間:2002年11月26日
Author:Inetufo
Email:[email protected]
Homepagehttp://www.thugx.com
Date:3-8-2003
本文將一步一步教你如何編寫一個QQ惡作劇程序,轉載請注明出處:
程序原理:獲取系統中的所有進程,并保存在一個數組中,然后在數組中查找含有QQ,oicq,qq,OICQ字樣的進程,如果找到就立即殺掉該進程.這樣你一運行QQ,QQ進程就會被立即殺掉,也就是說如果該惡作劇程序一直運行你就不能上QQ了。呵呵,這招是不是有點毒啊?好了,現在一步一步的來講程序的編寫過程。
首先我們要解決的問題是如何實現惡作劇程序的自我隱藏,關于進程隱藏的文章很多,我就只簡單的介紹一下了。在Win9X系統下可以通過調用RegisterServiceProcess API這個API函數將進程注冊為一個服務模式的進程,這樣在Win9X系統下用Ctrl+Alt+Del調出的任務管理器中將不會出現這個進程了。RegisterServiceProcess API函數存放于系統內核Kernel32.dll中.具體聲明如下:
DWORD RegisterServiceProcess(
DWORD dwProcessId, //服務進程的進程標志,如果為NULL表示當前進程
DWORD dwType //如果參數為RSP_SIMPLE_SERVICE 表示注冊當前進程
//如果參數為RSP_UNREGISTER_SERVICE 表示取消當前進程的注冊
);
函數調用成功返回1,否則返回0
通過對RegisterServiceProcess 這個API函數的調用我們就能實現在Win9X系統下的進程隱藏了。但是要在WinNT系統下真正的實現進程隱藏就沒有在Win9X系統下那么簡單了。只要進程以進程內核的形式運行,進程就將出現在任務管理器中.要實現WinNT下進程的真正隱藏,只能以非進程的方式執行目標代碼,也就是說把目標代碼以線程的方式遠程注冊到宿主進程中.關于這種方法的實現已經有文章介紹,在這里就不多說了。在這里,我并沒有采用這種隱藏進程的方法而是將進程注冊為系統的一個名為Service的服務進程,雖然這樣并沒有真正的隱藏進程,但是在一般情況下還是不容易發現的。在Win2000下用任務管理器查看進程時是不能結束該進程的,必須通過控制面板中的服務管理控制臺來停止服務,也可以在命令行下用net stop service來停止服務在XP下可以通過任務管理器結束該進程。這里簡單介紹一下WinNT中的服務程序: