Step By Step Analisa Bug Buffer Overflow DCom Windows RPC

Sekarang Kita Akan Memanfaatkan Tehnik Hacking Untuk MengAnalisa , Langsung Kita Mulai Step By Stepnya =))

Analisa Bug Buffer Overflow

Kalau melihat bulletin security yang diterbitkan microsoft, ada 2 jenis bug buffer overflow yaitu :
1. Local Stack Overflow
2. Remote Stack Overflow

Tentunya karena RPC (Remote Procedure Call) dalam servicenya melakuakan open port adalah sangat memungkinkan menjadi stack overflow secara remote juga.

Dalam fungsi API(Application Programming Interface) seperti dalam dokumen MSDN terdapat deklarasi CoGetInstanceFromFile yang variablenya adalah sebagai berikut :

HRESULT CoGetInstanceFromFile(
COSERVERINFO * pServerInfo,
CLSID * pclsid,
IUnknown * punkOuter,
DWORD dwclsctx,
DWORD grfMode,
OLECHAR * szName,
ULONG cmq,
MULTI_QI * rgmqresults);
Coba perhatikan variabel szName yang di deklarasikan sebagai OLECHAR. Ketika membaca path file, dalam fungsi bahasa C/C++ menggunakan fungsi lPersistFile::Load yang artinya variabel yang diinputkan dengan menggunakan fungsi CoGetInstanceFromFile akan di load ke memory menggunakan object lPersistFile::Load

Contohnya begini :
ada nama file XadCobaCobaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.txt yang terdapat di drive C:
maka ketika file tersebut di eksekusi menggunakan fungsi windows CoGetInstanceFromFile akan menjadi :
CoGetInstanceFromFile(pServerInfo,NULL,0,CLSCT X_REMOTE_SERVER, STGM_READWRITE, L"C:\XadCobaCobaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.txt", 1,&q1)

Lalu, kenap terjadi Overflow ?
Dalam kumpulan fungsi RPC ada sebuah fungsi yang namanya GetPathForServer yang panjang file hanya di deklarasi sebanyak 0x20(dalam heksa) atau dalam deksimal adalah 32 karakter. Jadi pada contoh kasuk tersebut diatas, file XadCobaCobaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.txt bisa menyebabkan buffer overflow karena pangjang karakternya lebih dari 32 karakter.

Nah Sudah Teranalisakah Windows Anda Dengan Step By Step Ini ?? Mudah²an Sudah Yaa , hhehe  :D
Ranking: 5
 
© Andrian21 All Rights Reserved