bons 2 пункт пригодился - гуглю сабж. 1 пункт - сохранил, почитаю. 3 - либа вылетает только при условии, что снят лимит на half-open connects(или он заведомо большой). Так что претензий в мелокософту, видимо, тоже нет - они на это не расчитывали. Просто любопытный метод "отрубить" своей машине сеть теперь интерсно: 1. реализация SYN\ACK запросов на дельфи - буду гуглить (интересуют модифицированные запросы, а не стандартные, которые предоставляет ф-ция connect) 2. перспективы патчинга tcp.sys в целях перенаправления траффика (и прочих)
2 ErrorNeo собирашся ддос бота писать чтоли? 0) то что ты описал - это банальный SYN флуд. Который когдато был очень уж популярным. Но сейчас самая ленивая ОС с ним кое как справляется. Фряха вообще в ядре имеет защиту от syn флуда. 1) SYN\ACK запросы - юзай сырые сокеты. Но там нельзя подделать адрес отправителя ). КОгдато сам такое на делфи писал ) 2) Также как вариант можно заюзать либу WinPCap чтобы из своих программ подделывать запросы. 3) патчить tcp.sys - можно, но не нужно. Существует такая вешь как TDI и там ты можеш поставить фильтровать входящие и исходящие пакеты и также можеш их подправляться слегка ) и куда угодно можеш перенаправить тогда. 4) Но самая беспаливная вешь это юзать хуки на уровне NDIS. Там ты сам бог сетевой. Также можно зарегать новый NDIS протокол и через него работать. Можеш строить сам какие хочешь пакеты и отправлять куда хочешь с любыми подельными данными. Но увы это уже не юзермод.
благодарю! про SYN флуд был не в курсе - столкнулся, когда целевой сервер перестал отвечать, в результате чего нагрузка на проц машины-клиента резко начала подниматься с 1-2% до 100%. Сейчас почитал немного про сабж, и узнал, что дефолтный суммартный таймаут на безответный SYN запрос (он же connect к недоступному серверу) составляет аж (3+6+12) целую 21 секунду... даже в 20 потоков такое(почему-то) на 100% грузит любую, даже самую мощную современную систему-клиента. (покр. грузило в моем конкретном случае) Теперь узнал, что это само по себе является методом атаки, да еще и устаревшим Но все равно пригодится Про перенаправление траффика - тру. Буду гуглить\пробовать эти методы немного позже. Оч. полезная инфа
Подскажите пожалуйста. А то голову уже сломал)) как из значения Reg_binary Вот пример 0b 90 a9 84 e9 fb dc 64 03 fd 50 ff 24 c5 4b b7 получить ТЕКС?? К сведенью это пароль сохранненый Mail.ru Агентом.
привет всем, возник вопрос почему строка которая записанная в бинарный файл при чтении ее оттуда это куча мусора? вот код Code: type MyFormat=record Len:WORD; Str:Array of byte; end; Procedure SaveF(S:String); var MyFile:THandle; re:longword; Sav:MyFormat; begin MyFile:=CreateFile('log.bin', $40000000, 2, nil, 2, 128, 0); sav.Len:=Length(s); SetLength(sav.Str,sav.Len); CopyMemory(@sav.Str[0], @s[1], sav.Len); WriteFile(MyFile, sav,sav.len+2, Re, nil); CloseHandle(MyFile); end; Function ReadF:string; var MyFile:THandle; re:longword; Sav:MyFormat; begin MyFile:=CreateFile('log.bin', GENERIC_READ ,FILE_SHARE_READ, nil, OPEN_EXISTING,0, 0); ReadFile(MyFile, sav,2, Re, nil); SetLength(sav.Str,sav.len); ReadFile(MyFile, sav.Str[0], sav.len, re, nil); CloseHandle(MyFile); SetString(Result, PChar(@sav.Str[0]),sav.len); end;
Code: program paralel; var x11,x12,y11,y12,x21,x22,y21,y22:integer; a1,b1,a2,b2:integer; begin readln (x11,y11,x12,y12,x21,y21,x22,y22); a1:=y11-y12; a2:=y21-y22; b1:=x12-x11; b2:=x22-x21; if (A1*B2)=(A2*B1) then writeln ('yes') else writeln ('no'); end. http://www.informatik.kz/programm-pas.htm - тут посмотри по этой теме. С изучения нормального человеческого языка, русского или украинского (сужу по части UA в нике). А вообще, тема уже 200 раз поднималась, юзай поиск.
Здравствуйте, хотелось бы написать бота для браузерной игры...предполагаю это сделать на Delphi - так как его знаю больше чем C++ (не знаю возможно ли в нём). Опишу суть дела. Играю в Бомжи-Онлайн (_bomjionline_._com), браузерная игра сделана на Flash. Суть игры это бить монстров и зарабатывать опыт и копейки за которые увеличивать статы... Система боя сделана как показано на скрине: Что нужно сделать: Чтобы бот отлавливал данные переходящие от сервера к браузеру и отправлял данные от браузера к серверу. Например в боте выставляем чтобы он бил все время в 100% определенным ударом и т.д. Вот и наступил сам вопрос: Возможно ли это сделать всё на Delphi и в какую сторону мне нужно копать информацию. Если можно дайте книги, статьи и тд. Связанные с этим вопросом. Также если есть у кого наподобие написанные боты то если можно поделитесь исходниками для изучения. PS Видел в интернете разработку для Бомжи-Онлайн, но её приостановили.
Это не бот, это снифер с возможностью правки отправляемых на сервер данных... Для WOW BC была такя прога, называлась она WPE поищи в инете, возможно она тебе поможет и писать ничего не придётся... Для разных игр есть разные, для линейки тож есть какой то... но это НЕ бот... Если надумаешь сам кодить ищи снифер на Delphi... в сети есть как минимум 3 исходника рабочие которые можешь изучить и уже начинать делать что то своё...
Как я понял для линейки это _http://saur.x33.ru/, для wow это _http://wpepro.net/ ... а для браузера нужен определенный или какой то из них подойдет? Тогда возникает вопрос, может легче будет сделать по проверке цвета определенного места экрана. И возможно ли на Delphi осуществить проверку цвета по экрану и нажатие при удачном цвете (не удачном) левой кнопки мышки. Например: если удар не серого цвета, то нажать.
Тут такой вопрос. Есть программа-клиент, отправляющая запросы на серв. Нужно с помощью сторонней программы отправить из программы-клиента свой пакет и получить ответ сервера. Покажите пример пожайлусто.
почитай в википедии про Векторное произведение с помощью сниффера изучи содержимое запроса и попытайся подделать его
Спасибо, но я хотел отправить запрос именно из программы-клиента (допустим qip) с помощью своей программы. Нужно как то перехватить хэндл сокета этой программы. Думаю нужно смотреть в сторону хуков (перехват api функций).
2 ZET36 никаких хуков не нудо. Достаточно внедриться в прогу (хотябы под видом DLL) или открыть процесс того приложения с правами на копирование дискрипторов. Затем запросить список всех дискрипторов которые открыты в проге(или том процессе, если через открытие делаеш). Далее перебрать их всех и определить к чему он относится и если это дискриптор связанный с сетью, то прям его и юзай для функции send (если из другова процесса делаеш, то просто копируй его к себе)