Thứ Năm, 26 tháng 8, 2010

Code PacketX của autoIT

#include
#Include
dim $filelog ="C:\Documents and Settings\COMPUTER\My Documents\auto_IT\packetX_log.txt"
Const $PktXPacketTypePromiscuous = 0x0020
Const $PktXLinkType802_3 = 1
Const $PktXLinkType802_5 = 2
Const $PktXLinkTypeFddi = 3
Const $PktXLinkTypeWan = 4
Const $PktXLinkTypeLocalTalk = 5
Const $PktXLinkTypeDix = 6
Const $PktXLinkTypeArcnetRaw = 7
Const $PktXLinkTypeArcnet878_2 = 8
Const $PktXLinkTypeAtm = 9
Const $PktXLinkTypeWirelessWan = 10
Const $PktXModeCapture = 1

; Protocol types
Const $PktXProtocolTypeEthernet = 1
Const $PktXProtocolTypeIp = 2
Const $PktXProtocolTypeUdp = 3
Const $PktXProtocolTypeTcp = 4
;======= VarGetType
Global $oPktX = ObjCreate("PktX.PacketX")

;~ // Create PackeX object

If Not IsObj($oPktX) Then MsgBox(0, "ERROR", "No Object")
$EventObject = ObjEvent($oPktX, "PacketX_")
;~ // Display network adapters
For $i = 1 To $oPktX.Adapters.Count

If $oPktX.Adapters ($i).IsGood Then
MsgBox(0, '', "(" & $i & ") " & $oPktX.Adapters ($i).Description)
PrintAdapter($oPktX.Adapters ($i))
EndIf
Next

; Select network adapter
$oPktX.Adapter = $oPktX.Adapters ($oPktX.Adapters.Count)
;~ PrintAdapter($oPktX.Adapter)
; Capture buffer parameters
$oPktX.Adapter.BuffSize = 2 * 1024 ; 2 KB
$oPktX.Adapter.BuffMinToCopy = 0

; Hardware filter and capture mode
$oPktX.Adapter.HWFilter = $PktXPacketTypePromiscuous
$oPktX.Adapter.Mode = $PktXModeCapture

; Packet event handler
Func PacketX_OnPacket($oPacket)
PrintHead($oPacket)
PrintData($oPacket)
EndFunc ;==>PacketX_OnPacket
Func PrintAdapter($oAdapter)
ConsoleWrite("Device name is " & $oAdapter.Device & @LF)
ConsoleWrite("Link type is ")
Switch $oAdapter.LinkType
Case $PktXLinkType802_3
ConsoleWrite("Ethernet (802.3)" & @LF)
Case $PktXLinkType802_5
ConsoleWrite("Token Ring (802.5)" & @LF)
Case $PktXLinkTypeFddi
ConsoleWrite("FDDI" & @LF)
Case $PktXLinkTypeWan
ConsoleWrite("WAN" & @LF)
Case $PktXLinkTypeLocalTalk
ConsoleWrite("LocalTalk" & @LF)
Case $PktXLinkTypeDix
ConsoleWrite("DIX" & @LF)
Case $PktXLinkTypeArcnetRaw
ConsoleWrite("ARCNET (raw)" & @LF)
Case $PktXLinkTypeArcnet878_2
ConsoleWrite("ARCNET (878.2)" & @LF)
Case $PktXLinkTypeAtm
ConsoleWrite("ATM" & @LF)
Case $PktXLinkTypeWirelessWan
ConsoleWrite("NdisWirelessXxx media" & @LF)
Case Else
ConsoleWrite("Unknown!" & @LF)
EndSwitch
ConsoleWrite("Link speed is " & $oAdapter.LinkSpeed & " bps" & @LF)
Consolewrite( "Network IP addres is " & $oAdapter.NetIP&@LF)
Consolewrite( "Network mask is " & $oAdapter.NetMask&@LF)
ConsoleWrite("HW address is " & $oAdapter.HWAddress & @LF)
EndFunc ;==>PrintAdapter

Func PrintHead($oPacket)
local $type
Switch $oPacket.Protocol
Case $PktXProtocolTypeEthernet
$type='Eth'
Case $PktXProtocolTypeIp
$type='Ip'
Case $PktXProtocolTypeUdp
$type='UDP'
Case $PktXProtocolTypeTcp
$type='TCP'
EndSwitch
; PHIA DUOI LA CAC DONG LENH SE HAOT DONG NEU BAN BO CHAM PHAY ==> NHUNG NO SE LAM R?I MAT BAN
If (($oPacket.DestIpAddress == "203.128.240.173") or (($oPacket.DestIpAddress == "192.168.1.106") and ($oPacket.SourceIpAddress == "203.128.240.173"))) then
ConsoleWrite("----------------------- Packet Header ---------------------" & @LF)
_FileWriteLog($filelog,"----------------------- Packet Header ---------------------" & @LF,-1)
ConsoleWrite("Original size " & $oPacket.OriginalSize & " bytes" & @LF)
_FileWriteLog($filelog,"Original size " & $oPacket.OriginalSize & " bytes" & @LF,-1)
ConsoleWrite("Capture size " & $oPacket.DataSize & " bytes" & @LF)
_FileWriteLog($filelog,"Capture size " & $oPacket.DataSize & " bytes" & @LF,-1)
consoleWrite("Capture time " & $oPacket.TimeSec & " (number of seconds from 1/1/1970)" & @LF)
_FileWriteLog($filelog,"Capture time " & $oPacket.TimeSec & " (number of seconds from 1/1/1970)" & @LF,-1)
ConsoleWrite("Capture microseconds " & $oPacket.TimeUSec & @LF)
_FileWriteLog($filelog,"Capture microseconds " & $oPacket.TimeUSec & @LF,-1)
ConsoleWrite("Capture date " & $oPacket.Date & " (system date and time)" & @LF)
_FileWriteLog($filelog,"Capture date " & $oPacket.Date & " (system date and time)" & @LF,-1)
ConsoleWrite('Protocol: ' & $type & @LF)
_FileWriteLog($filelog,"Protocol: " & $type & @LF,-1)
ConsoleWrite('From ' & $oPacket.SourceIpAddress & ':' & $oPacket.Sourceport & ' To ' & $oPacket.DestIpAddress & ':' & $oPacket.DestPort & @LF)
_FileWriteLog($filelog,'From ' & $oPacket.SourceIpAddress & ':' & $oPacket.Sourceport & ' To ' & $oPacket.DestIpAddress & ':' & $oPacket.DestPort & @LF,-1)
EndIf
EndFunc ;==>PrintHead

Func PrintData($oPacket)

Dim $sline

For $bByte In $oPacket.Data

$sline = $sline & Hex($bByte, 2 & " ")
Next
$CODE = $sline
;$CODE = StringMid($sline, 109, 8); CHO NAY BAN CO THE CHINH SUA TUY Y', SAU CHO BAT GOI NHU Ý VD $CODE = StringMid($sline, 113, 4)

If StringLen($CODE) > 0 Then

; IF $code = "0E0045B0" or $code = "130070B0" OR $code ="27001530" Then ; HAM IF NAY RAT QUAN TRONG VI CAC BAN DUNG NO DE BAT GOI PACKET KHI CAN (vd 2 GOI 0E0045B0 VA 0E004570 KHI CHON MOB
If (($oPacket.DestIpAddress == "203.128.240.173") or (($oPacket.DestIpAddress == "192.168.1.106") and ($oPacket.SourceIpAddress == "203.128.240.173"))) then
ConsoleWrite("----------------------- Packet Data -----------------------" & @LF)
_FileWriteLog($filelog,"----------------------- Packet Data -----------------------" & @LF,-1)
ConsoleWrite($CODE & @LF)
_FileWriteLog($filelog,$CODE & @LF,-1)
Endif
;Else
;ConsoleWrite(1)
;EndIf

EndIf
EndFunc ;==>PrintData

Func PrintStats($oAdapter)
ConsoleWrite("------------------- Capture Statistics --------------------" & @LF)
ConsoleWrite("Packets received " & $oAdapter.PacketsRecv & @LF)
ConsoleWrite("Packets lost " & $oAdapter.PacketsLost & @LF)
EndFunc ;==>PrintStats
;========================================
; TAT CA VIET BOT SE BAT DAU O DAY luc nao cung nam giua start ==> while .... wend ==> stop; Start capture
$oPktX.Start
While 1
Sleep(10)
;ATTACK() ; khi nao` ham attack ben duoi ban OK thi hay mo? no'
WEnd
$oPktX.Stop
#cs
Func ATTACK()
Local $i
LOCAL $attackKey = 4
IF $CODE = "0E0045B0" OR $CODE ="0E004570" Then
Do
for $i = 1 to $$attackKey
ControlSend($i)
$i +=1
if $i = $attackKey Then
$i = 1
EndIf
next
Until $CODE = "nhan diem ket thuc" ; cac ban tu tim cai nay1 nha
EndFunc
#ce

Không có nhận xét nào:

Đăng nhận xét