小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

【轉(zhuǎn)自看雪】解密市面上考試軟件系列所有題庫(kù) + 編寫(xiě)自己的考試軟件 + [求職]

 herowuking 2015-01-12

本人小菜一枚,若有錯(cuò)誤請(qǐng)大神們指正。
 原帖地址:http://bbs./showthread.php?t=186883

考試系列產(chǎn)品市場(chǎng)上主要有
No.1:考試寶典[Delphi]考試軟件巨頭淘寶出售每月都過(guò)N萬(wàn)
No.2:題無(wú)憂(yōu)[C# .NET] 價(jià)格較低 廣告印象深刻..
No.3:帕斯考通、助考之星等各種。。[VC/Delphi]
 
No.3系列軟件幾乎沒(méi)有什么保護(hù)可言,OD調(diào)試軟件后下斷點(diǎn)就可以跟蹤到密碼。但是有個(gè)小問(wèn)題是:不同版本的sqlite3.dll的加密算法不同只能用原DLL程序調(diào)用解密才能還原,不然你有了密碼也不會(huì)匹配的,因?yàn)樗惴ú煌?。所以,你必須把程序目錄下的sqlite3.dll 或者System.Data.SQLite.DLL復(fù)制出來(lái)自己寫(xiě)個(gè)exe調(diào)用程序移除密碼。
通過(guò)調(diào)試獲取所有產(chǎn)品sqlite3加密密碼如下
助考之星 qinbibnghe2003@163.com.xzfvd*
職稱(chēng)英語(yǔ)A qinbibngheA@163&.cvd*
帕斯考通 zonghengsihai#&&99
考試寶典 20090919lovejrtytong
題無(wú)憂(yōu) sqlitetiwuyouwen / sqlitetiwuyoulishan
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
SQLite3的加密函數(shù)說(shuō)明
[SIZE=3]

代碼:
sqlite3_key是輸入密鑰,如果數(shù)據(jù)庫(kù)已加密必須先執(zhí)行此函數(shù)并輸入正確密鑰才能進(jìn)行操作,如果數(shù)據(jù)庫(kù)沒(méi)有加密,執(zhí)行此函數(shù)后進(jìn)行數(shù)據(jù)庫(kù)操作反而會(huì)出現(xiàn)“此數(shù)據(jù)庫(kù)已加密或不是一個(gè)數(shù)據(jù)庫(kù)文件”的錯(cuò)誤。
int sqlite3_key( sqlite3 *db, const void *pKey, int nKey),db 是指定數(shù)據(jù)庫(kù),pKey 是密鑰,nKey 是密鑰長(zhǎng)度。例:sqlite3_key( db, "lo6.net", 7);
 
sqlite3_rekey是變更密鑰或給沒(méi)有加密的數(shù)據(jù)庫(kù)添加密鑰或清空密鑰,變更密鑰或清空密鑰前必須先正確執(zhí)行 sqlite3_key。在正確執(zhí)行 sqlite3_rekey 之后在 sqlite3_close 關(guān)閉數(shù)據(jù)庫(kù)之前可以正
 
常操作數(shù)據(jù)庫(kù),不需要再執(zhí)行 sqlite3_key。
int sqlite3_rekey( sqlite3 *db, const void *pKey, int nKey),參數(shù)同上。
 
清空密鑰為 sqlite3_rekey( db, NULL, 0)。
--------------------------------------------------------------------
No.3系列
 
簡(jiǎn)單分析了下助考之星的加密算法,寫(xiě)了所有系列產(chǎn)品注冊(cè)機(jī),如下
代碼:
00C0621C    55              push ebp                                 ; OEP
00C0621D    8BEC            mov ebp,esp
00C0621F    83C4 E0         add esp,-0x20
00C06222    53              push ebx
00C06223    56              push esi                                 ; 0002-06A7-0FEB-FBFF-8098-2203[PT_N]11111111111111111111111
00C06224    57              push edi                                 ; 0xE進(jìn)棧;//EDI
00C06225    33DB            xor ebx,ebx                              ; EBX=0,CF=0;//自身xor運(yùn)算結(jié)果為0,CF=0
00C06227    895D E4         mov dword ptr ss:[ebp-0x1C],ebx          ; SS段 清空
00C0622A    895D E0         mov dword ptr ss:[ebp-0x20],ebx
 ........................//算法為MD5算法。不用貼出來(lái)看了。。。只是構(gòu)造一種格式 看下圖就知道了
點(diǎn)擊圖片以查看大圖

圖片名稱(chēng):	捕獲zkzx.jpg
查看次數(shù):	109
文件大小:	47.6 KB
文件 ID :	88600
而且,sqlite數(shù)據(jù)庫(kù)中竟然有一處保存著類(lèi)似FTP賬號(hào)密碼的東東。。而且竟然連接上了=.= 軟件怎么能這么弱 這都在哪兒找的開(kāi)發(fā)人員??
 
 
No.2系列:題無(wú)憂(yōu)[C# .NET] Xenocode殼
 
C# .NET 我一直沒(méi)看過(guò)...而且加了個(gè)Xenocode殼搞得我更不懂了.. 換個(gè)思路 不調(diào)試了,有些做C#這種高級(jí)語(yǔ)言的都不懂得釋放,嘗試內(nèi)存搜索找出密碼!
運(yùn)行程序后,拿出外掛注入器CE,插入題無(wú)憂(yōu).exe 盲目搜索一些關(guān)鍵字符串 比如 SQLite Format3 等這種解密后的頭。功夫不負(fù)有心人,在內(nèi)存里找到了DB密碼。
復(fù)制出System.Data.SQLite.DLL[c#]自己寫(xiě)個(gè)C#語(yǔ)言的調(diào)用程序清空密鑰就OK了。
 
No.1系列:考試寶典[Delphi] Safengine Protector v2.1.9.0強(qiáng)殼
這個(gè)剛剛開(kāi)始感覺(jué)無(wú)從下手,斷斷續(xù)續(xù)1星期搞定的。主要原因是1.強(qiáng)殼我不會(huì)脫,2.無(wú)sqlite3.dll調(diào)用 他自己將sqlite源碼寫(xiě)在exe里面了!有了DB密碼也打不開(kāi)的(⊙o⊙)…
我想了幾個(gè)方案:
1.找到sqlite3算法源碼 嘗試從算法解密[下載了份C源碼,看了幾眼立馬放棄了!全是一排排一列列的矩陣數(shù)字,這么成熟的東西我這無(wú)知的小菜妄想了....]
2.能不能遠(yuǎn)程插入調(diào)用?[沒(méi)嘗試 感覺(jué)不會(huì)]
3.內(nèi)存dump解密后的數(shù)據(jù)庫(kù) [無(wú)知的小菜又妄想了。。]
4.修改sqlite3指令導(dǎo)出解密后的DB數(shù)據(jù)庫(kù) [可惜..沒(méi)有這功能語(yǔ)句]
5.試遍所有sqlite3.dll [下載了幾十種sqlite3...]
6.是否存在open_rekey()函數(shù) [如果開(kāi)發(fā)人員夠2,沒(méi)有移除的話(huà)。。我來(lái)構(gòu)造調(diào)用讓其自解密!]
OD載入后如下:
代碼:
00BA433B > $  E8 1D000000   call    00BA435D                         ;  (initial cpu selection); PUSH ASCII "Safengine Protector v2.1.9.0"
00BA4340   .  53 61 66 65 6>ascii   "Safengine P"
00BA434B   >  72 6F         jb      short 00BA43BC
00BA434D      74            db      74                               ;  CHAR 't'
00BA434E      65            db      65                               ;  CHAR 'e'
00BA434F      63            db      63                               ;  CHAR 'c'
00BA4350   .  74 6F 72 20 7>ascii   "tor v2.1.9.0",0
00BA435D   >  9C            pushfd
這么強(qiáng)的殼對(duì)于我這種小菜,脫殼是不太可能的 先換個(gè)思路 構(gòu)造個(gè)open_key異常
彈窗出錯(cuò)嘍...各種被偷窺到了哈。。SQLiteTable3.pas[這個(gè)可百度谷歌到源碼!]
名稱(chēng):  err.jpg
查看次數(shù): 1
文件大小:  58.9 KB
點(diǎn)擊圖片以查看大圖

圖片名稱(chēng):	err2.jpg
查看次數(shù):	39
文件大小:	123.9 KB
文件 ID :	88595
名稱(chēng):  err3.jpg
查看次數(shù): 1
文件大小:  83.1 KB
 
動(dòng)態(tài)調(diào)試SE殼里的程序,我是先跳轉(zhuǎn)到關(guān)鍵位置[解密前必經(jīng)過(guò)],然后點(diǎn)運(yùn)行,他會(huì)解出原反匯編代碼,手要快按下下斷。。
動(dòng)態(tài)調(diào)試也要有個(gè)參考吧!不然這么下斷如同大海撈針。我在解出原反匯編代碼斷下來(lái)后,用PELOAD dump保存整個(gè)程序,拖到IDA和DEDE里面后可以分析一些東西了~!
點(diǎn)擊圖片以查看大圖

圖片名稱(chēng):	psbdede.jpg
查看次數(shù):	47
文件大小:	76.6 KB
文件 ID :	88606
 
下面要做的就是:通過(guò)sqlite3提供的C源碼 或者 SQLiteTable3.pas 結(jié)合IDA 定位open_rekey()函數(shù) //我做的時(shí)候并不清楚到底有沒(méi)有這接口,雖然有些無(wú)力但我沒(méi)放棄哈。
這是以前留下的筆記
代碼:
1.脫SE殼  ->修改DB數(shù)據(jù)庫(kù) 造成無(wú)法打開(kāi)彈出錯(cuò)誤 暴露軟件真實(shí)地址
 
2.過(guò)SE殼OD加載程序 下斷點(diǎn) 或者找到OEP下段 LoadPE -> Dump整個(gè)程序 
 
3.dede分析 + IDA分析 
 
4.利用IDA的ASCII碼與源碼定位sqlite3_open函數(shù)
sqlite3_open  = 0054094C
sqlite3_rekey = 00543A58
 
5.
00545EFE    8B55 08         mov edx,dword ptr ss:[ebp+0x8]           ; password
00545F01    8B45 FC         mov eax,dword ptr ss:[ebp-0x4]
00545F04    E8 77090000     call ExamBibl.00546880                   ; sqlite3_key(mydb, password, strlen(pwd))
00545F09    84C0            test al,al
00545F0B    74 09           je short ExamBibl.00545F16
---------------------------------------------------------------------
0054689F    A1 5CC67900     mov eax,dword ptr ds:[0x79C65C]
005468A4    8B00            mov eax,dword ptr ds:[eax]
005468A6    FFD0            call eax                                 ; ExamBibl.00543A3C       ------|
005468A8    83C4 0C         add esp,0xC                              ; 用密碼打開(kāi)成功 平衡堆棧       |
005468AB    85C0            test eax,eax                             ; 利用key構(gòu)造rekey自解密--------|----用密碼打開(kāi)后,平衡堆棧完畢 再跳回去構(gòu)造解密 //jmp 00543A3C
005468AD    0F94C0          sete al                                                                  |
005468B0    84C0            test al,al                                                               |
---------------------------------------------------------------------                                |
00543A3C    55              push ebp                                 ; 真sqlite3_key函數(shù)    <<<-------
00543A3D    8BEC            mov ebp,esp
00543A3F    8B45 10         mov eax,dword ptr ss:[ebp+0x10]          ; strlen(password) // 改0 實(shí)現(xiàn)無(wú)密碼
00543A42    50              push eax
00543A43    8B55 0C         mov edx,dword ptr ss:[ebp+0xC]           ; password  // 改0 實(shí)現(xiàn)無(wú)密碼
00543A46    52              push edx
00543A47    6A 00           push 0x0
00543A49    8B4D 08         mov ecx,dword ptr ss:[ebp+0x8]           ; *mydb   =   02AC20A8   /* Database to be rekeyed */
00543A4C    51              push ecx
00543A4D    E8 76FEFFFF     call ExamBibl.005438C8                   ; 執(zhí)行sqlite3_key()  //call sqlite3_rekey()   call 00543A58
00543A52    83C4 10         add esp,0x10                             ; 自解密完畢!!
00543A55    5D              pop ebp
00543A56    C3              retn
 
//自動(dòng)腳本
005468AD    0F94C0          sete al //執(zhí)行到此處修改一下代碼實(shí)現(xiàn)自解密
 
-----------
005468AD    50              push eax  //push strlen(pwd) = 0
005468AE    52              push edx  //push password = 0
005468AF    6A 00           push 0x0
005468B1    51              push ecx  //push mydb
005468B2    E8 A1D1FFFF     call ExamBibl.00543A58 //call sqlite3_rekey()自解密
005468B7    90              nop
005468B8    90              nop
005468B9    90              nop

 
點(diǎn)擊圖片以查看大圖

圖片名稱(chēng):	psddb.jpg
查看次數(shù):	72
文件大小:	91.0 KB
文件 ID :	88607
點(diǎn)擊圖片以查看大圖

圖片名稱(chēng):	ksbd1.jpg
查看次數(shù):	10
文件大小:	532.2 KB
文件 ID :	88598
上圖解密前,下圖解密后
點(diǎn)擊圖片以查看大圖

圖片名稱(chēng):	ksbd2.jpg
查看次數(shù):	8
文件大小:	540.9 KB
文件 ID :	88599
當(dāng)解密出來(lái)的那一刻。。我happy的跳了起來(lái)=.=!沒(méi)想到就這么搞了一件自己完不成的事情。靈感很關(guān)鍵..
 
================================================================================================
[SIZE=3]自己寫(xiě)考試系列軟件
用VS2010寫(xiě)的 也學(xué)著考試寶典自封sqlite3 但是我知道要移除open_rekey() =.= .
界面用的開(kāi)源的炫彩庫(kù)XCGUI,我也自封到exe里了。。
自己練習(xí)做做開(kāi)發(fā)哈。。沒(méi)什么技術(shù)含量了就 設(shè)計(jì)界面 布局 PS 調(diào)用下sql語(yǔ)句。。
show 下程序..
點(diǎn)擊圖片以查看大圖

圖片名稱(chēng):	圖片1.png
查看次數(shù):	23
文件大小:	255.8 KB
文件 ID :	88601
點(diǎn)擊圖片以查看大圖

圖片名稱(chēng):	圖片2.png
查看次數(shù):	17
文件大小:	141.8 KB
文件 ID :	88602
點(diǎn)擊圖片以查看大圖

圖片名稱(chēng):	圖片3.png
查看次數(shù):	5
文件大小:	347.4 KB
文件 ID :	88603
點(diǎn)擊圖片以查看大圖

圖片名稱(chēng):	圖片4.png
查看次數(shù):	7
文件大小:	167.0 KB
文件 ID :	88604
點(diǎn)擊圖片以查看大圖

圖片名稱(chēng):	圖片5.png
查看次數(shù):	19
文件大小:	32.6 KB
文件 ID :	88605
 
最后,用apktools逆向下考試寶典android手機(jī)版本發(fā)現(xiàn)了內(nèi)部調(diào)用接口測(cè)試平臺(tái),還有個(gè)接口 每天注冊(cè)多少人都能看到。。個(gè)人信息 機(jī)器碼 聯(lián)系方式
http://t.api./
點(diǎn)擊圖片以查看大圖

圖片名稱(chēng):	cg.jpg
查看次數(shù):	54
文件大小:	60.2 KB
文件 ID :	88597
 
不要抱怨自己運(yùn)氣不好,機(jī)會(huì)不多,機(jī)會(huì)、運(yùn)氣是自己創(chuàng)造的!
-------------------------------------------------------------------------------------------------


構(gòu)造自解密部分確實(shí)不容易操作 放一下曾經(jīng)的操作記錄錄像。。。曾經(jīng)有個(gè)看雪C+大俠想花萬(wàn)元買(mǎi)數(shù)據(jù)哈。。估計(jì)你也會(huì)看到這的....           
鏈接: http://pan.baidu.com/s/1o6mMmvg 密碼: pt28                    

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶(hù)發(fā)布,不代表本站觀(guān)點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶(hù) 評(píng)論公約

    類(lèi)似文章 更多