1601, 1/81 ȸ¿ø°¡ÀÔ  ·Î±×ÀΠ 
   ÇØÅ·ÀßÇÏ°í½Í´Ù
   http://¾øÀ½
   image_(1).png (164.0 KB), Download : 8     [¿À¸¥ÂÊ ¹öÆ° ´­·¯ ´Ù¿î ¹Þ±â]
   [Windows API] Keyboard Hooking

http://www.hackerschool.org/HS_Boards/zboard.php?id=Free_Lectures&no=8584 [º¹»ç]



pwnable.kr °ø·«À» ¿Ã¸±·Á°í ÇßÁö¸¸ ¼­¹ö°¡ ´Ù¿îµÈ°ÇÁö ¾Æ´Ï¸é ¼ö¸®ÁßÀÎÁö...
´õ±¸³ª ±âÁ¸ÀÇ ½±°Ô Ç®ÀÌµÈ bof¹®Á¦°¡ ½ºÅà ī³ª¸®±îÁö Ãß°¡°¡ µÇ¾î ÀÖ¾ú´Ù.
±×·¡¼­ ¹«½¼ °­Á¸¦ ¾µ±î °í¹ÎÇÏ´Ù°¡...
ÈÄÅ· °­Á¸¦ ½áº»´Ù.

Win32¿¡¼­ ÈÄÅ·Àº ¿î¿µÃ¼Á¦ÀÇ ¾ÖÇø®ÄÉÀ̼ǿ¡¼­ ¹ß»ýÇÏ´Â
À̺¥Æ®³ª ÇÔ¼ö¸¦ È£ÃâÀ» °¡·Îä´Â ±â¹ýÀ» ¸»ÇÑ´Ù.

SetWindowHookEx API¸¦ »ç¿ëÇÏ¿© ÈÄÅ·À» ¼³Á¤ÇÒ ¼ö ÀÖÀ¸¸ç,
ÀÌ ¶§ »ç¿ëµÇ´Â ÈÄÅ· Á¾·ù´Â
WH_KEYBOARD, WH_MOUSE, WH_CALLWNDPROCµîÀÌ ÀÖ´Ù.

À©µµ¿ì¿¡¼­ ÇÒ ¼ö ÀÖ´Â °£´ÜÇÑ ÈÄÅ· ÇÁ·Î±×·¥ Äڵ带 ¿¹½Ã·Î µé°Ú´Ù.




=============== ½ÃÀÛ ===============
#include <windows.h>
#include <stdio.h>

// Å°º¸µå ÈÄÅ© »ó¼ö Á¤ÀÇ
#define WH_KEYBOARD_LL 13
#define WM_KEYDOWN 0x0100
#define WM_KEYUP 0x0101

#pragma comment(lib, "user32.lib")

LRESULT CALLBACK KeyboardProc(int nCode, WPARAM wParam, LPARAM lParam);
HHOOK SetKeyboardHook();
void RemoveKeyboardHook(HHOOK hook);

int main(void)
{
    printf("TEST!\n");
    HHOOK hook = SetKeyboardHook();  // Å°º¸µå ÈÄÅ© ¼³Á¤

    // ¸Þ½ÃÁö ·çÇÁ
    MSG msg;
    printf("GetMessage È£ÃâµÊ\n");
    while (GetMessage(&msg, NULL, 0, 0)) {
        TranslateMessage(&msg);
        DispatchMessage(&msg);
    }

    // ÈÄÅ© Á¦°Å
    RemoveKeyboardHook(hook);
    return 0;
}

// ÈÄÅ·µÈ Å°º¸µå À̺¥Æ®¸¦ ó¸®ÇÒ Äݹé ÇÔ¼ö
LRESULT CALLBACK KeyboardProc(int nCode, WPARAM wParam, LPARAM lParam)
{
    if (nCode == HC_ACTION) {  // ÈÄÅ·ÀÌ Á¤»óÀûÀ¸·Î µ¿ÀÛÇßÀ» ¶§
        KBDLLHOOKSTRUCT* keyInfo = (KBDLLHOOKSTRUCT*)lParam;
        if (wParam == WM_KEYDOWN) {
            printf("Å°°¡ ´­·È½À´Ï´Ù: %c\n", keyInfo->vkCode);  // °¡»óÅ° ÄÚµå Ãâ·Â
        }
        else if (wParam == WM_KEYUP) {
            printf("Å°°¡ ¶¼¾îÁ³½À´Ï´Ù: %c\n", keyInfo->vkCode);  // °¡»óÅ° ÄÚµå Ãâ·Â
        }
    }
    // ÈÄÅ© üÀο¡ ´ÙÀ½ ÈÄÅ©¸¦ Àü´Þ
    return CallNextHookEx(NULL, nCode, wParam, lParam);
}

// ÈÄÅ©¸¦ ¼³Á¤ÇÏ´Â ÇÔ¼ö
HHOOK SetKeyboardHook()
{
    HHOOK hook = SetWindowsHookEx(WH_KEYBOARD_LL, KeyboardProc, GetModuleHandle(NULL), 0);
    if (hook == NULL) {
        printf("ÈÄÅ© ¼³Á¤ ½ÇÆÐ\n");
    }
    else {
        printf("Å°º¸µå ÈÄÅ©°¡ ¼³Á¤µÇ¾ú½À´Ï´Ù.\n");
    }
    return hook;
}

// ÈÄÅ©¸¦ Á¦°ÅÇÏ´Â ÇÔ¼ö
void RemoveKeyboardHook(HHOOK hook)
{
    if (hook != NULL) {
        UnhookWindowsHookEx(hook);
        printf("ÈÄÅ©°¡ ÇØÁ¦µÇ¾ú½À´Ï´Ù.\n");
    }
}

=============== ³¡ ===============







»ç½Ç ³î¶ó¿î °Ô 'ÀÛ¾÷ °ü¸®ÀÚ'¿¡¼­ ÇÁ·Î¼¼½º°¡ ÀâÈ÷Áö ¾Ê¾Ò´Ù.
(Windows 10 Pro¿¡¼­ ½ÇÇàÇÏ¿´´Ù...)
Process Explorer¿¡¼­´Â ÀâÇûÁö¸¸...
Process Explorer¿¡¼­µµ ÀâÈ÷Áö ¾Ê´Â ¹æ¹ýÀÌ... ÀÖÀ»±î...? ¤¾¤¾

  Hit : 193     Date : 2024/11/20 04:29



    
     [°øÁö] °­Á¸¦ ¿Ã¸®½Ç ¶§´Â ¸»¸Ó¸®¸¦ ´Þ¾ÆÁÖ¼¼¿ä^¤Ñ^ [29] ¸Û¸Û 02/27 19542
1600   °£´ÜÇÑ ½Ã½ºÅÛ ÄÝ ÃßÀû ÇÁ·Î±×·¥ ¸¸µé±â     ÇØÅ·ÀßÇÏ°í½Í´Ù
01/18 5
1599   [overthewire.org] - leviathan1     ÇØÅ·ÀßÇÏ°í½Í´Ù
01/14 46
1598   [overthewire.org] - leviathan0     ÇØÅ·ÀßÇÏ°í½Í´Ù
01/14 25
1597   [Write Up] Crypto Cat's CTF 2024 - BabyFlow     ÇØÅ·ÀßÇÏ°í½Í´Ù
12/29 107
1596   [pwnable.kr] bof     ÇØÅ·ÀßÇÏ°í½Í´Ù
12/25 98
1595   [pwnable.kr] Shellshock[1]     ÇØÅ·ÀßÇÏ°í½Í´Ù
11/23 236
1594   ShellshockÀÇ ±âº» ¿ä¾à     ÇØÅ·ÀßÇÏ°í½Í´Ù
11/23 202
1593   [pwnable.kr] fd     ÇØÅ·ÀßÇÏ°í½Í´Ù
11/23 192
1592   VPNÀÌ ¿¬°áµÇ¾ú´Ù°¡ µµÁß¿¡ ²¨µµ À¥ ºê¶ó¿ìÀú»ó¿¡¼­ À¯ÁöµÇ´Â ÀÌÀ¯     ÇØÅ·ÀßÇÏ°í½Í´Ù
11/22 194
1591   ÇØÄ¿µéÀÌ ÇØÅ·½Ã »ç¿ëÇÏ´Â µð·ºÅ丮 °ø°£[1]     ÇØÅ·ÀßÇÏ°í½Í´Ù
11/22 236
1590   Keyboard Hooking -part2 - (Python3 ver)     ÇØÅ·ÀßÇÏ°í½Í´Ù
11/20 210
  [Windows API] Keyboard Hooking     ÇØÅ·ÀßÇÏ°í½Í´Ù
11/20 192
1588   [pwnable.kr] cmd1 °ø·«     ÇØÅ·ÀßÇÏ°í½Í´Ù
10/23 369
1587   netdiscover ÆÄÀ̽ãÀ¸·Î ±¸ÇöÇϱ⠠   ÇØÅ·ÀßÇÏ°í½Í´Ù
08/13 641
1586   ÆÄÀ̽ãÀ» ÀÌ¿ëÇÑ ½ÉÇà À¥ Å©·Ñ·¯     ÇØÅ·ÀßÇÏ°í½Í´Ù
08/13 519
1585   ÆÄÀ̽ã random¸ðµâÀ» ÀÌ¿ëÇÑ ¼ýÀÚ¸ÂÃ߱⠰ÔÀÓ ±¸Çö     ÇØÅ·ÀßÇÏ°í½Í´Ù
05/30 1070
1584   ÆÄÀ̽ã äÆà ÇÁ·Î±×·¥ ±¸Çö     ÇØÅ·ÀßÇÏ°í½Í´Ù
05/28 975
1583   ÆÄÀ̽㠼ÒÄÏ ÇÁ·Î±×·¡¹ÖÀÇ ±âÃÊ     ÇØÅ·ÀßÇÏ°í½Í´Ù
05/26 1124
1582   ¸®´ª½º À¥ ·Î±× ºÐ¼®     ÇØÅ·ÀßÇÏ°í½Í´Ù
05/20 745
1 [2][3][4][5][6][7][8][9][10]..[81]

Copyright 1999-2025 Zeroboard / skin by Hackerschool.org / Secure Patch by Hackerschool.org