聲明:僅技術交流和學習!
前言:
你有沒試過在網上下載一套視頻,因網盤限速整整開機下載好幾晚,下完后打開發現加密了,又找不到賣家注冊。心里是幾萬只草泥馬飛奔啊。
於是不甘心和好奇下,償試自己破解。
目前該軟件作者已停止更新。
今天就來分析如何繞過超時代VPY加密視頻播放器的播放密碼(自己下載個視頻加密器隨便加密個視頻償試)
1、打開界面,沒有密碼的提示如圖:
如果要觀看,需要播放密碼。本次因沒有播放密碼,我們要分析下試試能不能直接破解繞過注冊直接播放。
2、我們直接載入OD里,F9運行。運行后在本進程空間內找字符串,發現:CheckPassword 關鍵位置
雙擊字符串后,來到相應地址,反匯編窗口直接下斷隨便輸入密碼后點擊播放,程序直接斷下后F8分析。
程序斷下后,F8往下走發現在校驗密碼:
對流程不熟悉,我們直接往下走一遍看下它錯誤的密碼提示在哪。然后找關鍵地址進程PATCH。
經過錯誤償試后,來到這個關鍵位置:
本次是進行破解,並不是分析它的密碼算法。所以具體算法省略。。。。。。。。。。。
F8往下來到這個點。
00682726 8B83 08040000 mov eax,dword ptr ds:[ebx+0x408] ; 壓入機器碼
0068272C 50 push eax
0068272D 8B83 0C040000 mov eax,dword ptr ds:[ebx+0x40C] ; 視頻編號
00682733 50 push eax
00682734 8B83 14040000 mov eax,dword ptr ds:[ebx+0x414] ; 未知
0068273A 50 push eax
0068273B 8B83 10040000 mov eax,dword ptr ds:[ebx+0x410] ; 2 ??
00682741 50 push eax
00682742 8B83 B4030000 mov eax,dword ptr ds:[ebx+0x3B4]
00682748 0FB680 60030000 movzx eax,byte ptr ds:[eax+0x360] ; 未知
0068274F 50 push eax
00682750 8D83 1C040000 lea eax,dword ptr ds:[ebx+0x41C] ; 未知
00682756 50 push eax
00682757 8B8B 04040000 mov ecx,dword ptr ds:[ebx+0x404]
0068275D 8B55 FC mov edx,dword ptr ss:[ebp-0x4]
00682760 8B83 00040000 mov eax,dword ptr ds:[ebx+0x400]
00682766 E8 69B3FDFF call IT資源社.0065DAD4
0068276B 85C0 test eax,eax
0068276D 74 41 je XIT資源社.006827B0
紅色的CALL就是密碼算法具體CALL,經過計算后會影響EAX的值。EAX的值會影響后面的JE是否跳轉。這個JE就是關鍵,如果不跳直接會報播放密碼錯誤。
於是斷定這是關鍵位置(前面F8把程序跑了遍發現)。直接將它改為JMP。你會驚訝的發現,視頻直接播放了。直接就成功完成了本次任務。
本篇分享的僅是技術交流和學習,作為學習破解入門或逆向分析的一種思路。