Trao đổi với tôi

http://www.buidao.com

12/13/10

[Virus] DB's Bkav

Link: http://virusvn.com/forum/showthread.php?2962-DB-s-Bkav&p=16950#post16950
Gần đây Bkav làm em quá bất ngờ với kết quả quá cao tại bài kiểm tra VB 100, điều này làm em tò mò về Bkav hiện nay nhất là DB của nó.
Hiện em đang tìm cách giải mã lại khối DB của Bkav Pro 2009, cấu trúc mã hóa + DB file này là của phiên bản ngày 16/3/2010của Bkav Pro 2009, còn hiện nay thì mình không đảm bảo

Các DB file lưu trữ ngoài (Nói là ngoài vì trong file thực thi của Bkav còn có nữa) :
Xin nói rõ đây chưa phải là toàn bộ DB của Bkav, chỉ là một phần
VirusName0.dat : File định danh tên virus - Đã hoàn thành giải mã
StringDB0.dat : File lưu các thông tin về registry của virus để scan hay phục hồi gì đó chưa rõ
VirusDef0.dat : Chưa rõ
PatternCodeTable0.dat : Chưa rõ

3 file bên trên do có cùng cấu trúc file đơn giản nên có triển vọng giải mã. Riêng file thứ 4 hiện chưa rõ cấu trúc gì
Mục tiêu của mình là nhằm xem rốt cuộc Bkav hiện nay có gì trong tay (Mà quan trọng nhất là DB). Hiện tại, em chưa hề có ý đồ xấu gì ở đây (Ít nhất là hiện tại)
-
Các file em tiến hành giải mã là DB ngày 16-3 của Bkav
Đây là code giải mã từng chuỗi của em hiện nay - Chưa hoàn thành, hiện tại còn rất chắp vá :

Code :
Private Function deCode(strData As String) As String
Dim lFisrt As Long
lFisrt = Asc(Mid(strData, 3, 1))

Dim strRaw As String
strRaw = Right(strData, Len(strData) - 2)

lFisrt = lFisrt Xor 50

deCode = "W3" & deCode1(strRaw, lFisrt)
End Function
Private Function deCode1(strData As String, lStart As Long) As String
Dim i As Long
Dim strRet As String

Dim lMax As String
lMax = Len(strData) + 2

Dim strChar As String

For i = 1 To Len(strData)
strChar = Mid(strData, i, 1)
strRet = strRet & Chr(Asc(strChar) Xor ((lStart + i - 1) Mod lMax))
Next i

deCode1 = strRet
End Function

File đính kèm :
VirusName0.zip : File định danh của Bkav - Chưa giải mã
retName.zip : File định danh của Bkav -Sau khi giải mã
Attached Files