Сигурен сум дека сте запознаени со софтвер пакетот на CyberLink, PowerDVD, кој се користи за гледање на вашите дигитални медиумски податоци, односно за гледање на филмови (DVD, DivX и сл.).
Според произведувачот:
- High-definition movie content
-
The best video quality out there, with support for video formats like AVCHD, MPEG-4 AVC (H.264), and Blu-ray Discs.
- Advanced video technologies - See the beauty in each shot of every scene with TrueTheater™ Technology.
- Home theater audio - Enjoy movies on the PC as if you are right at the cinema, with support for Dolby, DTS, and other home theater technologies.
- Smart DVD utilities - Save battery power on your notebook (See-it-All), move language subtitles (Read-it-Clearly), and auto loop a section of dialog (Say-it-Again), with PowerDVD's award winning DVD controls.
Мислам дека доволно беше вовед за софтверот. Е сега, пред една недела, после 2 дена истражување, наидов на ранливост кај овој пакет од типот Buffer Overflow (BoF), или пренатрупување на баферот (меѓу-меморијата), поточно оној бафер кој служи за складирање на внесената листа на филмови кои сакате да ги гледате, односно двата видови на податоци со екстензии .m3u и .pls.
Станува збор за ранлива функција во самиот производ т.н. Edit Playlist, која не извршува проверка на внесениот износ на податоци или boundary checking. Со самото дознавање на ваквата ранливост, корисникот може да го експлоатира самиот тек на програмата и да изврши своеволни инструкции или кодови во целиот оперативен систем како и ескалација на привилегии на дадениот корисник. Но, доколку изврши експлоатација со пренатрупувањето безуспешно, тогаш следува спротивното од последниот дел на CIA тријадата или принципијалите на ИТ сигурноста - Достапностa (Availability), исклучување на софтверот односно Denial of Service (DoS).
За подетални информации околу Buffer Overflow Exploitation би можел да напишам еден блог понатаму доколку се покаже голем интерест за тоа ;).
Нормално, како и секој истражувач во сигурносната индустрија, првин извршуваме анализа на извршување на програмата. Тоа го правиме со помош на дебагирање и декомпајлирање. Во овој случај, јас го користев дебагерот OllyDbg кој е од типот INT3 и служи за Windows апликации. OllyDbg можете да го превземете на следнава страна: http://ollydbg.de/download.htm.
После извршената анализа со помош на т.н. Fuzzing или Brute-Force Vulnerability Discovery техника, успешно ги презапишав (overwrite) регистрите на CPU-то, поточно основниот регистар (EBX) и регистарот за податоци (EDX).
------------------------------------------------------------------------------------------- (ea0.d4c): Stack overflow - code c00000fd (first chance)
First chance exceptions are reported before any exception handling.
This exception may be expected and handled.
eax=00003e84 ebx=02890048 ecx=00032310 edx=02890049 esi=0007ef41 edi=0012cb2c
eip=0043fb37 esp=0012c308 ebp=0012cf4c iopl=0
nv up ei pl nz na pe nc
cs=001b
ss=0023
ds=0023
es=0023
fs=003b
gs=0000
efl=00210206
image00400000+0x3fb37:
0043fb37 8501
test
dword ptr [ecx],eax
ds:0023:00032310=00000000
-------------------------------------------------------------------------------------------
Да напоменам дека оваа слабост е тестирана и успешно експлоатирана на следните верзии: CyberLink PowerDVD 6, 7 и 8.
Нормално, за да се направи успешна експлоатација, целта ќе ни биде да го презапишеме EIP регистарот кој служи за извршување на следната инструкција, но моментално нема да го објавувам кодот што го прави баш тоа, додека произведувачот на софверот нe објави закрпа на дадената ранливост. Произведувачот е известен за ранливоста и се чека на неговиот одговор.
Според добиените статистики од Facebook во април, 2009 скоро 143.000 жители на Македонија (околу 7% од популацијата) имале свој профил на оваа друштвена мрежа. Истиот месец, 10% од србите биле Facebook корисници, додека само 3.4% од бугарите а 13.4% од хрватите биле FB членови.