MorphostLab

Tempat nongkrongnya Morphic dan kawan-kawan

Metode Scanning READSTRING, masih zamankah???

Posted by Morphic pada Maret 7, 2010


Walaupun untuk file-file yang ukurannya besar metode ini sangat lambat, namun menurut saya metode scanning ini masih terkesan ampuh untuk mendeteksi virus lokal!
Dulu trik ini juga sudah pernah saya bahas, tapi nampaknya metode ini juga mempunyai tempat tersendiri di hati para pembuat antivirus.

Dan gak ada salahnya untuk dibahas kembali dengan tambahan trik-trik baru.

Pembuat antivirus tentunya gak asing lama dengan source code berikut:
Function ReadStr(Where As String) As String
On Error Resume Next
Dim filedata As String
Open Where For Binary As #1
filedata = Space$(FileLen(Where))
Get #1, , filedata
Close #1
ReadStr = filedata
End Function

Code di atas adalah dasar utamanya. Setelah kita dapatkan string file lalu kita bandingkan dengan signature string virus yang kita inginkan.
MIsalnya:
If instr(Ucase(ReadStr(“D:\virus.exe”)), “BRONTOK”) > 0 then
Msgbox “Ini virus!”
End if

Itu Cuma contoh saja. Itu untuk mencari string “BRONTOK” di dalam sebuah file. Dan tentunya untuk virus-virus Brontok yang tidak dipack pasti terdeteksi! Namun gak Cuma virus bisa terdeteksi, malah antibrontok pun terdeteksi. Jadi untuk membandingkan string pakailah string yang memang super sensitif!

Source code yang di atas tadi memang dasar dari READSTRING. Tapi muncul code yang lebih sederhana dan sangat super cepat! Dengan code berikut scanning bisa lebih cepat dan sangat ringan.

Function WatchString(Where As String, Begin As Long, HowMuch As Integer, Capital As Boolean) As String
On Error Resume Next
Dim filedata As String

Open Where For Binary As #1
filedata = Space$(HowMuch)
Get #1, FileLen(where) – Begin, filedata
Close #1
If Capital = True Then
WatchString = UCase(filedata)
Else
WatchString = filedata
End If
End Function

Dengan ini kita bisa menyaring sepotong string untuk diuji. Dan ini sangat mudah. Terlebih lagi untuk mendeteksi virus-virus/Worm VB.

Contohnya begini:
Kalo gak salah dulu saya pernah nyebarin satu source code bagaimana mendeteksi virus RUNONCE atau RUNOUCE atau CHIRB@MM. Nah, source code ini saya yang buat dan tidak ada source lain untuk mendeteksi virus RUNONCE. Selain dengan trik STRING kita bisa juga mendeteksinya dengan metode PE (maaf teknik ini rahasia.)
Begini contoh penggunaan sourcenya:
Dim textz as string
If Filelen(“D:\sample.exe”) > 1750 Then
textz = WatchString(“D:\sample.exe” , 1750, 100, True)
If InStr(textz, “IMISSYOU”) > 0 Then
Catat AlamaT, “Infected By Runonce”, “”
Exit Function
End If
End If

Saya rasa ini luar biasa mudah. Dan saya harap kamu mengerti.

Dengan trik ini juga kamu bisa buat satu heuristik bagaimana mendeteksi virus-virus / Worm yang dibuat dari Visual Basic.
Atau mendeteksi virus-virus/worm yang dibuat dari Worm/Malware generator.

Sekian:
By: Morphic Karta
thanks to:
-Yudha
-Satryacode

42 Tanggapan to “Metode Scanning READSTRING, masih zamankah???”

  1. Bobby said

    mas saya mau nanya dalam kalkulasi crc32 itu yang jadi parameter kan string dari suatu file??? itu tuh diambil dengan method

    Open Where For Binary As #1
    filedata = Space$(HowMuch)
    Get #1, FileLen(where) – Begin, filedata
    Close #1

    kaya gini kan? yang mau saya tanya pas diambil tuh bentuknya apa? apakah binary atau array bytes?? terima kasih

  2. Charizard said

    ‘===================================
    Function WatchString(Where As String, Begin As Long, HowMuch As Integer, Capital As Boolean) As String
    On Error Resume Next
    Dim filedata As String

    Open Where For Binary As #1
    filedata = Space$(HowMuch)
    Get #1, FileLen(where) – Begin, filedata
    Close #1
    If Capital = True Then
    WatchString = UCase(filedata)
    Else
    WatchString = filedata
    End If
    End Function
    ‘=======================================================================================================

    Pertanyaan: Bisa dijelaskan gag maksud “Where, Begin, dan HowMuch” pada kode diatas apa? apakah Where itu Pathnya file yang akan diperiksa? begitu jg dg Begin dan HowMuch.. maaf ya, maklum newbie🙂

  3. Reyhan said

    Mas2 sekalian pada tau tempat donlot VB yang portable ato yang Full ?…

  4. Pengen nanya nih.,…..!!!
    kalau pengen mendapatkan sutu string dari virus itu gimana ya..???

  5. Silver FoX said

    Soal metode PE, memang sebaiknya jgn dibongkar phic. Gw pnya tmen magician, gw mnta ajarin trik sulap ma dia. Diajarin c, tp cm bbrp. Mnrutku AV jg bgtu. Tiap AV pnya ciri khas masing2. Morphost, av vb lokal dgn metode PE adl unik dan ini yg beda’in dgn AV lain. Seandainya mau disebar, coba pikirkan efek sampingnya. Bukan mustahil vx lokal memanfaatkannya utk 7-an negatif.

  6. Shafry said

    tapi mantap lah

  7. BangTom said

    @wong sutur n ambahju
    kalo gak salah dulu sudah dibahas. Database maret rilis bersamaan dengan rilisnya morphost expert plus.

    Lagipula ini belum tanggal 10 kok. Kan tanggal 10 paling lama database morphost rilis.

  8. ambohjuuuuuuuu said

    MANA THO FILE UPDATENYA?????????????????????
    DARI DULU CUMA REVIEW DOANG,TAU2 APES KAYAK EXPERTMU ITU YG KEBANYAKAN PAMERE DOANG…..

  9. muamarkudo said

    phic, Morphost versi Installer aku dah kirim ke emailmu,

    smga itu seperti apa yg kaw maksud..

  10. wong sutur said

    KANG UPDATE AV-MU MANA DARI DULU GAK PERNAH UPDATE ADANYA CUMA TRIK2 TOK,NIAT PORA…????

  11. HajarBro! said

    Ya elah ini mah teknik kacangan.. Teknik kayak gini anak TOLOL pun juga bisa.. Bhahahaha

  12. Morphic said

    Ya. Trik ni memang sgtlah tdk sulit.
    N hampir semua Av lokal udah pake teknik ni. Dan ni adl teknik wajib.

    Meski teknik ni sederhana tp code ni bsa dgunakan utk heuristik khusus trojan n dropper.
    Ampuh bgt. N tdk smua Av bsa menerapkn hal ni.

    Namun tdk sy bocorkn dsini

  13. Thanks ya Morphic Karta atas ilmunya…

  14. shafry said

    wew trik tu ud lama ad d avq.

  15. TOPAVmaker said

    Morphost pake teknik ini ya phic?
    Kira-kira antivirus lokal apa saja yang pakai teknik ini?

    I love morphost!
    Like this lah!

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s

 
%d blogger menyukai ini: