Perlihatkan Tulisan

Seksi ini mengijinkan Anda untuk melihat semua tulisan yang dibuat oleh anggota ini. Catatan bahwa Anda hanya bisa melihat tulisan yang dibuat dalam area di mana Anda memiliki akses terhadapnya.


Topik - MAbdanMulia

Halaman: [1]
1
Delphi/Pascal / Mendapatkan Direktori Aktif Untuk Windows 7
« pada: Agustus 22, 2012, 09:08:04 PM »
Assalamualaikum Wr. Wb.

Hy gan, salam super ^_^
Wew, buat agan M.Ridzky, Saya izin gan, judulnya hampir mirip :D
 
Konsep
FindWindow ==> FindWindowEx..sampai yang terakhir class tempat ==> SendMessage[WM_GETTEXT]
FindWindow = dapatkan class explorernya
FindWindowEx   = dapatkan childclass
SendMessage[WM_GETTEXT] = dapatkan tulisannya
 
Cara mendapatkan
Pakai Windowse atau Spy++, cara pakai cek di google :3
 
Terima kasih buat programmer
M.Ridzky, Ryan Bekabe, Mas Agus, dan member" smadaver
 
Kalau di Win Seven letak" classnya
CabinetWClass ==> WorkerW ==> ReBarWindow32 ==> Address Band Root ==> msctls_progress32 ==> Breadcrumb Parent ==> ToolbarWindow32
NB : FindWindow cuman buat CabinetWClass dan dimulai dari WorkerW sampai ToolbarWindow32 pakai FindWindowEx[ChildClass]
 
Source Code di Delphi :
1. Buat Timer dengan Enabled = True dan Interval = 1000
2. Buat 1 buat EditBox
3. Double click timer kemudian tulis code ini:
Kode: [Pilih]
var wnd, wnd2: HWND;
Buffer : array[0..255] of Char;
begin
wnd := FindWindow('CabinetWClass', nil);
if wnd <> 0 then  begin
    wnd2 := FindWindowEx(wnd, 0, 'WorkerW', nil);
      if wnd2 <> 0 then
      begin
        wnd2 := FindWindowEx(wnd2, 0, 'ReBarWindow32', nil);
          if wnd2 <> 0 then
          begin
          wnd2 := FindWindowEx(wnd2, 0, 'Address Band Root', nil);
            if wnd2 <> 0 then
            begin
            wnd2 := FindWindowEx(wnd2, 0, 'msctls_progress32', nil);
              if wnd2 <> 0 then
              begin
                wnd2 := FindWindowEx(wnd2, 0, 'Breadcrumb Parent', nil);
                if wnd2 <> 0 then
                begin
                  wnd2 := FindWindowEx(wnd2, 0, 'ToolbarWindow32', nil);
                  SendMessage(wnd2, WM_GETTEXT, 255, integer(@Buffer));
                  Edit1.Text := Buffer; 'tempatnya
                end;
              end;
            end;
          end;
      end;
  end;

Cmiiw :3

2
Teknologi Antivirus / Sharing Tehnik Deteksi Antivirus Disini
« pada: Juni 22, 2012, 12:36:02 PM »
Weww. . .
Om momod saya izin buka ini ya  :). kalau tidak berkenan dilocked aja  :'(.
Tujuan : untuk menambahkan referensi mengenai tehnik deteksi yang agan ketahui.
Sebenarnya Saya mw dipost bagian Smad-Behavior tetapi Saya kira Behavior beda ama deteksi  ^_^.
Ok lanjut saja gan. Diharapkan mengeshare tidak hanya Source Codenya langsung melainkan juga algoritmanya [hehe agar bisa dipahami seluruh macam programmer selain vb6]. hehe


Tehnik Heuristic Deteksi Beberapa Varian Sality [Melalui Nama Section]:
[spoiler]
Info : Metode Scanning Generasi 2 [Berdasarkan Pencocokkan Section Name]



Algoritma :
[spoiler]Beberapa file yang terinfeksi oleh Sality membuat 1 section pada section akhir dengan nama section mirip dengan section ke dua suatu file. saumpama ada struktur PE file sebelum terinfeksi :
  .text
  .data
  .rsrc
 
maka setelah terinfeksi oleh sality maka berubah menjadi :
  .text
  .data
  .rsrc
  .vdata

Tahu kan perbedaannya? yap betul, pada awal huruf [1 huruf] akhir section dibuat acak dan huruf selanjutnya sangat mirip dengan nama section nomer 2 pada struktur PE tersebut. [contoh ada di gambar]

Pseucode [VB6] :
[spoiler]
   If SectionAwal <> SectionAkhir Then 'dicek untuk ketepatan saja
    If SectionAkhir = ".idata" Then Exit Function 'diacuhkan saja kalau idata
    If InStr(right(left(SectionAwal, 4), 3), right(left(SectionAkhir, 5), 3)) > 0 Then
        HeurPE = "Win32/Sality.A"
        Exit Function
    End If
   End If
[/spoiler][/spoiler]

Implementasi :
[spoiler]
Karena pada nama section awal dibuat acak dan nama PE dibatasi maksimal adalah 5 huruf. maka kita mengambil  3 huruf dengan dimulai dengan huruf ke 3 dengan panjang 3 huruf dan 3 huruf terakhir pada section terakhir.
Source Code : http://www.mediafire.com/?5yea67co1nob5iw [/spoiler]

Referensi :
- The Art Of Computer Virus Research And Defense
- http://morphians.wordpress.com/2010/02/06/bagaimana-cara-morphost-mendeteksi-sality-rahasia-dibongkar/
[/spoiler]

tehnik lain menyusul, ayo gan tambah lagi biar tambah referensi ilmu kita . . .  ^_^

3
Antivirus Lokal Lainnya / Balance Virus Cleaner
« pada: April 28, 2012, 08:03:59 PM »

Balance Virus Cleaner :

Informasi
Balance Virus Celaner, adalah sebuah antivirus lokal Indonesia yang fokus mendeteksi pada virus lokal Indonesia. Dibuat dengan design user friendly agar dapat dipakai oleh setiap pengguna komputer. sesungguhnya antivirus ini sudah mulai rilis pada 28 April 2012.

Link Download
28 April 2012 :
 - http://balance-antivirus.com/wp-content/uploads/Installer/Balance%20Virus%20Cleaner%20revisi%201a.rar


Informasi File
   Versi : 1.0a
   Update : 28 April 2012
   Virus Database : 311 External Database + 55 Internal Database

Fitur
- Real Time Protect
- Process Manager
- User Database
- BVC-Lock

Gambar
Revisi 1.0
[spoiler]
Interface
[spoiler][/spoiler]

Systray
[spoiler][/spoiler]

RTP
[spoiler][/spoiler]

Contoh hasil scan
[spoiler][/spoiler]

Informasi Antivirus
[spoiler][/spoiler]
[/spoiler]

Team
[spoiler]Programmer : Muhammad Abdan Mulia
Virus Hunter :
- Muhammad Abdan Mulia
- Aries Suryadi
- Fransiscus Emanuel Bunaren

Promotion :
- Aries Suryadi
- Alarosi H. Pro
- Newbie Coderz

Web Designer :
- Muhammad Abdan Mulia
- Firdaus Simbolon
- I-Zeey
- Felicia Hadinata
- Laurensius Jeffrey Virologist

Tester :
- Jihad Aji Ghifari

Designer Antivirus :
- Muhammad Abdan Mulia[/spoiler]

Informasi lebih lanjut mengenai Balance Virus Cleaner bisa didapat di
 - http://www.balance-antivirus.com
 - http://www.facebook.com/xbalanceav

Terima kasih atas perhatiannya, apabila ada kata yang tidak berkenan saya mohon maaf. bisa anda review . . .

Informasi Antivirus
[spoiler]
1 Mei 2012 = Fix False Detect Conficker & Virutz & Lympao, penambahan Detect + Heal Alice.vbs
2 Mei 2012 = Penambahan sekitar 400 malware kedalam database
[/spoiler]

4
Teknologi Antivirus / [Sharing] Teknik RTP Khusus Process [Seperti AV*ST]
« pada: Februari 19, 2012, 11:11:57 AM »
Assalamualaikum Wr. Wb.
 ^_^ , sekedar sharing ilmu bagi para programmer AV yang sekarang sedang berkeliaran kemana mana ^_^, tehnik ini mengenai RTP Process. berikut ini penjelasan dan perbedaannya :

Perbedaan Antara RTP Process dengan RTP Biasa :
Kalau RTP Biasa yang biasa dikenal melihat path yang terlihat di explorer / yang terindeksi disuatu path. kalau RTP Process khusus untuk process task managernya.

Logika :
Mengaktifkan suatu timer yang berguna untuk mengecek pendeteksian suatu listCount Process di Task Manager, kalau disuatu keadaan ternyata nilai jumlah task managernya tidak sama maka ditengarai / akan muncul suatu pesan/ scanning dahulu.

Permasalahan dalam sandiwara :
Software itu hanya dibuka ketika kita mengklik Open saja tetapi juga ketika kita Software tersebut dipanggil oleh Software Lain. Contohnya saya buka program bernama "virus.exe" . Ketika program tersebut dibuka ternyata program tersebut itu akan memanggil temanya dengan program lain. [contohnya dengan perintah shellexecute] . Nah apakah itu akan terdeteksi oleh RTP Path yang biasa ??? .

Untuk lebih jelasnya silahkan download Code Berikut.

1. Buat 3 TextBox , 2 Listbox, 1 timer intervall = 1000
Gambar pola letak :



2. pada Form Code Editor Taruh code ini :
Kutip
      Option Explicit
'-------------------------------------------------
'Date           : 19 Februari 2012
'Nama Tujuan    : Untuk Seperti RTP untuk Process
'Author         : Muhammad Abdan Mulia
'Selamat maju terus programmer AV indonesia
'Terima kasih banyak atas :
'Allah SWT, A.M Hirin, MSDN, VB6, Darari Nur Amali, Mujaf, Alimx
'-------------------------------------------------
Dim LetakAwal As String
Private Sub List1_Click()
List2.AddItem List1.List(List1.ListCount)
End Sub

Private Sub Timer1_Timer()
      List1.Clear
      Select Case getVersion()

      Case 1 'Windows 95/98

         Dim f As Long, sname As String
         Dim hSnap As Long, proc As PROCESSENTRY32
         hSnap = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0)
         If hSnap = hNull Then Exit Sub
         proc.dwSize = Len(proc)
         ' Iterate through the processes
         f = Process32First(hSnap, proc)
         Do While f
           sname = StrZToStr(proc.szExeFile)
           List1.AddItem sname
           f = Process32Next(hSnap, proc)
         Loop

      Case 2 'Windows NT

         Dim cb As Long
         Dim cbNeeded As Long
         Dim NumElements As Long
         Dim ProcessIDs() As Long
         Dim cbNeeded2 As Long
         Dim NumElements2 As Long
         Dim Modules(1 To 200) As Long
         Dim lRet As Long
         Dim ModuleName As String
         Dim nSize As Long
         Dim hProcess As Long
         Dim i As Long
         'Get the array containing the process id's for each process object
         cb = 8
         cbNeeded = 96
         Do While cb <= cbNeeded
            cb = cb * 2
            ReDim ProcessIDs(cb / 4) As Long
            lRet = EnumProcesses(ProcessIDs(1), cb, cbNeeded)
         Loop
         NumElements = cbNeeded / 4

         For i = 1 To NumElements
            'Get a handle to the Process
            hProcess = OpenProcess(PROCESS_QUERY_INFORMATION _
               Or PROCESS_VM_READ, 0, ProcessIDs(i))
            'Got a Process handle
            If hProcess <> 0 Then
                'Get an array of the module handles for the specified
                'process
                lRet = EnumProcessModules(hProcess, Modules(1), 200, _
                                             cbNeeded2)
                'If the Module Array is retrieved, Get the ModuleFileName
                If lRet <> 0 Then
                   ModuleName = Space(MAX_PATH)
                   nSize = 500
                   lRet = GetModuleFileNameExA(hProcess, Modules(1), _
                                   ModuleName, nSize)
                   List1.AddItem Left(ModuleName, lRet)


                End If
            End If
          'Close the handle to the process
         lRet = CloseHandle(hProcess)
         Next

      End Select
Text1.Text = List1.ListCount
LetakAwal = List1.List(Text1.Text - 1) 'karena kan mulai dari 0 jadi kurangi 1
Text2.Text = LetakAwal

    If Text3.Text = "" Then
Text3.Text = Text2.Text

    ElseIf Text3.Text <> Text2.Text Then
MsgBox "Ditemukan process baru di komputer anda bernama :" & Text2.Text
'TARUH CODE SCANNING MU DISNI
'INFORMASI : PATHNYA YAITU TEXT2.TEXT Lhoo
Text3.Text = Text2.Text
List2.AddItem LetakAwal
    End If
End Sub

3. Buat Module dan taruh Code Berikut :
Kutip
      Public Declare Function Process32First Lib "kernel32" ( _
         ByVal hSnapshot As Long, lppe As PROCESSENTRY32) As Long

      Public Declare Function Process32Next Lib "kernel32" ( _
         ByVal hSnapshot As Long, lppe As PROCESSENTRY32) As Long

      Public Declare Function CloseHandle Lib "Kernel32.dll" _
         (ByVal Handle As Long) As Long

      Public Declare Function OpenProcess Lib "Kernel32.dll" _
        (ByVal dwDesiredAccessas As Long, ByVal bInheritHandle As Long, _
            ByVal dwProcId As Long) As Long

      Public Declare Function EnumProcesses Lib "psapi.dll" _
         (ByRef lpidProcess As Long, ByVal cb As Long, _
            ByRef cbNeeded As Long) As Long

      Public Declare Function GetModuleFileNameExA Lib "psapi.dll" _
         (ByVal hProcess As Long, ByVal hModule As Long, _
            ByVal ModuleName As String, ByVal nSize As Long) As Long

      Public Declare Function EnumProcessModules Lib "psapi.dll" _
         (ByVal hProcess As Long, ByRef lphModule As Long, _
            ByVal cb As Long, ByRef cbNeeded As Long) As Long

      Public Declare Function CreateToolhelp32Snapshot Lib "kernel32" ( _
         ByVal dwFlags As Long, ByVal th32ProcessID As Long) As Long

      Public Declare Function GetVersionExA Lib "kernel32" _
         (lpVersionInformation As OSVERSIONINFO) As Integer

      Public Type PROCESSENTRY32
         dwSize As Long
         cntUsage As Long
         th32ProcessID As Long           ' This process
         th32DefaultHeapID As Long
         th32ModuleID As Long            ' Associated exe
         cntThreads As Long
         th32ParentProcessID As Long     ' This process's parent process
         pcPriClassBase As Long          ' Base priority of process threads
         dwFlags As Long
         szExeFile As String * 260       ' MAX_PATH
      End Type

      Public Type OSVERSIONINFO
         dwOSVersionInfoSize As Long
         dwMajorVersion As Long
         dwMinorVersion As Long
         dwBuildNumber As Long
         dwPlatformId As Long           '1 = Windows 95.
                                        '2 = Windows NT

         szCSDVersion As String * 128
      End Type

      Public Const PROCESS_QUERY_INFORMATION = 1024
      Public Const PROCESS_VM_READ = 16
      Public Const MAX_PATH = 260
      Public Const STANDARD_RIGHTS_REQUIRED = &HF0000
      Public Const SYNCHRONIZE = &H100000
      'STANDARD_RIGHTS_REQUIRED Or SYNCHRONIZE Or &HFFF
      Public Const PROCESS_ALL_ACCESS = &H1F0FFF
      Public Const TH32CS_SNAPPROCESS = &H2&
      Public Const hNull = 0

      Function StrZToStr(s As String) As String
         StrZToStr = Left$(s, Len(s) - 1)
      End Function

      Public Function getVersion() As Long
         Dim osinfo As OSVERSIONINFO
         Dim retvalue As Integer
         osinfo.dwOSVersionInfoSize = 148
         osinfo.szCSDVersion = Space$(128)
         retvalue = GetVersionExA(osinfo)
         getVersion = osinfo.dwPlatformId
      End Function

4. Selesai tekan f5
5. Ketika berjalan, coba agan buka program baru, maka pada form akan muncul MSGBOX bahwa ditemukan process baru
6. Selesai

NB : Taruh code path scanningnya ke yang dibawahnya [MsgBox "Ditemukan process baru di komputer anda bernama :" & Text2.Text] . pathnya Text2.text

Kalau bingung bisa download hasil cetakan jadi SC nya :
http://www.mediafire.com/?pueuevq3f91n40s

NB :
SC ini bisa dibilang masih sederhana, bisa anda kreasikan lagi contohnya, sebelumnya Process di SUSPEND kemudian di scan apabila tidak terdeteksi maka kemudian di resume. dan lain lain. maaf tidak saya sertakan karena waktu saya merepet . kapan2 mungkin di ver.2.0

Ok, semoga bermanfaat bagi para programmer AV , ^_^
O ya, doakan saya besok mendapatkan nilai paling baik di UNAS yah  :-bd , sama Try Out Kabupaten besok   :D :D
amieen.

5
Antivirus Lokal Lainnya / Balance Antivirus 1.2.1 {Beta}
« pada: April 17, 2011, 06:07:38 PM »
Balance Antivirus version 1.2.1 {BETA}


Version :1.2.1 (Beta)
Update : 1 Juni 2011
Programer : Muhammad Abdan Mulia
Virus Database : 4574
Website : http://www.avbalance.blogspot.com
Facebook : http://www.facebook.com/pages/Balance-Antivirus/187968417912704
Link Download : LOCKED

- Penambahan :
1. Balance Antivirus Updater ( Update Setiap Minggu Sob )
2. Virus Signature
3. String Virus
4. Theme
5. Select All ListView Detection
6. Random Caption
7. Dll

- Kekurangan :
[spoiler]
1. Belum Support Unicode[/spoiler]

- Bug :
[spoiler]
Bug Dulu =
1. Error dibagian dll ( Fixed )
2. Error RTP ( Fixed )
3. Error ListView ( Fixed )
4. Error Double Detect ( Fixed )

Bug Sekarang = Belum Diketahui[/spoiler]

SS :
Nyusul Sob :licik:

Akhirnya selesai juga,   :-bd
Mohon komentarnya sob   :D :D

6
Assalamualaikum.,.,,
Bolehkah saya bertanya ???
Kan katanya Checksum M32-Pattern merupakan checksum buatan indonesia, dan katanya lagi lebih baik dari CRC32 ataupun MD5. Dan yang saya akan mencoba memakai checksum itu untuk RTP saya { hehehe iseng2 test checksum buatan anak bangsa  :-X }

Tetapi yang masih saya bingungkan bagaimana caranya mendapatkan code M31-PATTERN pada suatu file ???
atau kalau boleh berminat bolehkan buatkan project nya sekalian buat pencari M31-PATTERN ( hgehhhehe )
Kalau Masih Bingung mungkin SS ini akan memperjelasnya :


Mah Seperti yang anda lihat di SS,
di project itu kan buat pencari checksum CRC32 ( paling bawah )

Bagaimana jika M31-PATTERN ???
Mohon bantuannya.,.,,
karena saya mau membuat AV saya memakai M31-PATTERN ( coba2 kalau bagus )
Thx
Wassalamualaikum Wr. Wb.

7
Antivirus Lokal Lainnya / Balance Antivirus 1.0 Rilis { Reborn }
« pada: Maret 22, 2011, 09:14:28 PM »
Pindah Thread yang baru gan ^_^
mohon atas ketidak nyamananya 8)

8
Programming / Kenapa Antivirus saya begini yah ???
« pada: Maret 13, 2011, 09:26:18 AM »
Assalamualaikum Wr. Wb.

bagi yang udah pro. VB 6 dan programer Antivirus mohon bantuannya kenapa ANTIVIRUS saya begini yah ????
waktu saya menambah Databse Virus Internal tiba tiba terjadi error/ ketika saya kurang database nya langsung bisa dijalankan , yang saya tanyakan bagaimana agar dapat menambah sample virus sampai 5000 + ???? ( tanpa error )

Bagi master2 tolong please karena aku udah punya koleksi virus crc32 ( 10.000 lebih ) untuk aku masukkan ke antivirus q, ada yang bisa bantu please ??  ???

ini SS nya :



Mohon Bantuannya  ^:)^  ^:)^  ^:)^  ^:)^

9
Assalamualaikum Wr. Wb.

Hy agan2 yang saya hormati. bagiamana caranya membuat RTP pada antivirus sendiri yang memakai vb6 ???
maaf jika pertanya'an saya aga' GJ ...  :)


Halaman: [1]