Страница: 1 |
Страница: 1 |
Вопрос: Работа с пакетами (?)
Добавлено: 31.07.08 10:59
Автор вопроса: Bionik
Здравствуйте уважаемые программисты.
Нужна помощь знающих людей.
1.Необходимо отлавливать пакеты определенного приложения
2.Когда встретится определенный пакет(исходящий от приложения), допустим (A1 0F B2 FA 00 1E)
необходимо сразу отправить серверу свой заготовленный пакет, допустим (AA BB CC DD FF 00)
Как это реализовать посредствам ВБ?
Ответы
Всего ответов: 11
Номер ответа: 1
Автор ответа:
Bionik
Вопросов: 1
Ответов: 8
Профиль | | #1
Добавлено: 31.07.08 19:00
Пожалйста помогите...весь инет облазил ничего подобного не нашел! Вообще в идеале нужно сделать фильтр, т.е. при нахождение в пакете A1 0F B2 {Е0} 00 1E , он заменял в этом пакет первую пару AА 0F B2 Е0 00 1E и пускал его дальше
Номер ответа: 2
Автор ответа:
HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #2
Добавлено: 31.07.08 22:02
ну проксю сделай винсоком, или придется юзать какую-то тулзовину вроде http://www.tcpdump.org/
Номер ответа: 3
Автор ответа:
Bionik
Вопросов: 1
Ответов: 8
Профиль | | #3
Добавлено: 01.08.08 06:52
Спасибо за ответ, но Давай поконкретней как сделать проксю винсоком?
Номер ответа: 4
Автор ответа:
HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #4
Добавлено: 01.08.08 12:27
Берешь два винсока (минимум два, в случае многоклиентной прокси - массив винсоков) одном винсоком слушаешь порт (т.е. режим Listen), а вторым подключаешься куда надо... Прилетают данные на винсок тот которым ты слушаешь, и ты берешь сразу перекидуешь их другому винсоку который держит подключение. Это так, если в двух словах.
В интете много готовых http проксей на вб, та и при желании можно соксы4\5 найти. Вообщем гугл в помочь по "VB Proxy".
Номер ответа: 5
Автор ответа:
Bionik
Вопросов: 1
Ответов: 8
Профиль | | #5
Добавлено: 01.08.08 19:33
HTTP? А он пойдет для реализации моих целей?
Допустим я нашел сорцы прокси-сервера...как добавить в него фильтр?
Может кому пригодится:
Серверная часть
Private Sub Form_Load()
Form1.Visible = True
Do
If Winsock1.State <> sckConnected And Winsock1.State <> sckListening Then
Beep
Winsock1.Close
Winsock1.LocalPort = 125
Winsock1.Listen
End If
DoEvents
Loop
End Sub
Private Sub Winsock1_ConnectionRequest(ByVal requestID As Long)
Winsock1.Close
Winsock1.Accept requestID
End Sub
Winsock1_ConnectionRequest
Dim ToServer As String
Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
Dim ServerData As String
Winsock1.GetData ServerData
ToServer = ServerData
Oflameron_SendToWebserver
End Sub
Клиентская часть
Dim Webport
Dim Data As String
Private Sub Oflameron_SendToWebserver()
Oflameron.Close
Oflameron.RemoteHost = "10.62.182.54"
Oflameron.RemotePort = 80
Oflameron.Connect
Webport = Oflameron.RemotePort
End Sub
Private Sub Oflameron_Connect()
If Oflameron.State <> sckConnected Then Exit Sub
Oflameron.SendData ToServer
End Sub
Private Sub Oflameron_DataArrival(ByVal bytesTotal As Long)
Text1.Text = Oflameron.State
If Oflameron.State <> sckClosing Then
Oflameron.GetData Data
Winsock1.SendData Data
End If
End Sub
Номер ответа: 6
Автор ответа:
Bionik
Вопросов: 1
Ответов: 8
Профиль | | #6
Добавлено: 01.08.08 19:35
Сорри за дубл...HACKER ты использовал хоть раз WPE? Мне надо реализовать что-то подобное его фильтра
Номер ответа: 7
Автор ответа:
HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #7
Добавлено: 01.08.08 20:40
Ну оно по сути не важно, прокся она и в африке прокся.. какой траф гонять через неё не столь важно.
В Winsock1_DataArrival приходят данные. Анализируй их, изменяй, отправляй не то что приходит, а то что тебе хочеццо.
Нет, WPE я не использовал.
Номер ответа: 8
Автор ответа:
Bionik
Вопросов: 1
Ответов: 8
Профиль | | #8
Добавлено: 02.08.08 08:25
Ладно спасибо. Буду эксперементировать.
Для справки WPE - Winsock Packet Editor, можешь скачать если интересно _http://wpepro.net/plugins/p13_download_manager/getfile.php?categoryid=9&p13_sectionid=1&p13_fileid=82&p13_versionid=85
Номер ответа: 9
Автор ответа:
LamerOnLine
ICQ: 334781088
Вопросов: 108
Ответов: 2822
Профиль | | #9
Добавлено: 05.08.08 17:43
Как мне видится, тут забава в несколько этапов.
1. Снифферить порт(ы).
2. При обнаружении пакета подменять MAC-адреса
3. При необходимости изменять IP и время жизни пакета.
4. Пересчитывать CRC.
5. Отправлять
Сам делал такое, только очень давно. Забил на винсоки, полностью реализовывал на WinPCap-библиотеках. Правда, кто-то говорил что уже на XP они не работают, врать не буду - не пробовал.
Но если попробуешь и преуспеешь - там и не такие штуки вытворять можно...
Номер ответа: 10
Автор ответа:
LamerOnLine
ICQ: 334781088
Вопросов: 108
Ответов: 2822
Профиль | | #10
Добавлено: 05.08.08 17:45
К слову - сдается мне что проблемы пикапа с XP - гониво
Номер ответа: 11
Автор ответа:
HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #11
Добавлено: 05.08.08 18:10
Советованная выше tcpdump как раз оболочка над WinPCap.