Hacking °ü·Ã °Ô½ÃÆÇ

2000/08/06(21:37) from 203.255.160.61
ÀÛ¼ºÀÚ : °­ÁÙ±â (jkkang65@hanmail.net) Á¶È¸¼ö : 4172 , ÁÙ¼ö : 169
[°­ÁÂ] À¯´Ð½º¿¡¼­ ÇØÅ·Çϱâ - [7] Æۿ±Û
C/C++ ·Î ½ÇÇàÄڵ带 ¿ªÄÄÆÄÀÏÇÒ ¼ö ÀÖ´Â °¡´É¼ºÀº ¾ø´Â°¡?

ÀÌ FAQ´Â Bob StoutÀÌ ¾´ SNIPPET¿¡¼­ ÀοëÇÑ °ÍÀÌ´Ù.

¼ûÀ» ¸ØÃßÁö ¸¶¶ó. »ý°¢À» ÇØ º¸¶ó. ¿ªÄÄÆÄÀÏ·¯°¡ ÀÛµ¿Çϱâ À§Çؼ­ ¸ÕÀú 1) ¸ð
µç ÄÄÆÄÀÏ·¯°¡ ÃÖÀûÈ­°¡ °¡Àå Àß ¼³Á¤µÇ¾úÀ» ¶§¶óµµ, µ¿ÀÏÇÑ Äڵ带 »ý¼ºÇؾß
ÇÏ°í, 2)¿ªÄÄÆÄÀÏ·¯°¡ ¾î¶² ÄÄÆÄÀÏ·¯ÀÌ ÀÛ¼ºÇÑ Äڵ带 ¾Ë¾Æ¾ß ÇÑ´Ù.

¸¸ÀÏ Ã¹ ¹ø° Á¶°ÇÀÌ ¸Â´Ù¸é, ¸ðµç ÄÄÆÄÀÏ·¯ º¥Ä¡¸¶Å©´Â ¼Ò¿ë¾øÀ» °ÍÀÌ´Ù. ¿Ö
³ÄÇÏ¸é ¸ðµç Äڵ尡 µ¿ÀÏÇÑ µ¿ÀÛÀ» Çϱ⠶§¹®ÀÌ´Ù. µÎ ¹ø° °æ¿ì°¡ ÂüÀ̶ó¸é,
»õ·Î¿î ÄÄÆÄÀÏ·¯°¡ ³ª¿À´Â °ÍÀ» °í·ÁÇÏÀº ¸Å¿ì °Å´ëÇÑ ÇÁ·Î±×·¥ÀÌ µÇ¾î¾ß ÇÑ
´Ù.


ÁÁ´Ù. ƯÁ¤ ÄÄÆÄÀÏ·¯¿¡ ´ëÇÑ Æ¯º°ÇÑ ¿ªÄÄÆÄÀÏ·¯¶ó¸é ¾î¶³±î? - BC++ 4.5¿¡¸¸
Àû¿ëµÇ´Â ¿ªÄÄÆÄÀÏ·¯¶ó¸é ¾î¶³±î? ÀÌ °æ¿ì ÃÖÀûÈ­ ¹®Á¦¿¡ ´ê°Ô µÈ´Ù. ¸íÈ®ÇÏ°í
ÀÌÇØÇϱ⠽±°Ô ÀÛ¼ºµÈ ÄÚµå´Â ´ë°³ ºñÈ¿À²ÀûÀÌ´Ù. ÃÖ´ëÀÇ ¼º´ÉÀ» À§Çؼ­ ÀÛ¼º
µÈ ÄÚµå´Â ´ë°³ ³­ÇØÇÏ´Ù. ¿©±â¿¡ µ¡ºÙ¿© ¿ä»õ ÄÄÆÄÀÏ·¯Àº ¾î¶² ÃÖÀûÈ­¸¦ »ç¿ë
ÇÒÁö ¾Æ´ÒÁö¿¡ ´ëÇÑ ½ºÀ§Ä¡°¡ ÀÖ´Ù. ¿äÁ¡Àº Å« ÇÁ·Î±×·¥ÀÇ °æ¿ì ÃÖÀûÈ­ ½ºÀ§Ä¡
¸¦ ¹Ù²ÞÀ¸·Î ´Ù¾çÇÑ ¿ÀºêÁ§Æ® ¸ðµâÀÌ »ý¼ºµÈ´Ù´Â °ÍÀÌ´Ù. ±×·¡¼­ ¿ªÄÄÆÄÀÏ·¯
´Â ¾î¶² ÃÖÀûÈ­ ½ºÀ§Ä¡¸¦ »ç¿ëÇß´ÂÁö ¾Ë ¼ö ÀÖ¾î¾ß ÇÑ´Ù.


ÁÁ´Ù. ´õ °£´ÜÇÏ°Ô Æ¯Á¤ ÄÄÆÄÀÏ·¯ÀÇ ÃÖÀûÈ­¸¦ ¹ø¿ªÇÏÁö ¾Ê°í °¡Àå ³í¸®ÀûÀÎ ¿ø
½Ã Äڵ带 ¿ªÄÄÆÄÀÏÇÑ´Ù°í ÇÏÀÚ. ±×·³ ¾î¶»°Ô µÇ´Â°¡? ÁÁÀº ÃÖÀûÈ­±â´Â ÄÚµåÀÇ
³»ºÎ°úÁ¤À» ÀçÀÛ¼ºÇϱ⠶§¹®¿¡, ¿ªÄ«ÀÏÇؼ­ ¾ò´Â °á°ú´Â Àб⠾î·Á¿ï »Ó¸¸ ¾Æ
´Ï¶ó, ´ëºÎºÐÀÇ °æ¿ì goto ¹®°ú ÁÁÀº ÇÁ·Î±×·¥¿¡¼­´Â »ç¿ëÇؼ­´Â ¾È µÉ °Íµé
·Î °¡µæ Â÷ ÀÖÀ» °ÍÀÌ´Ù. ¿©±â¼­ ¿ªÄÄÆÄÀÏµÈ ¿ø½º ÄÚµå´Â ¾ò°Ô µÇ°ÚÁö¸¸ ¹«½¼
¼Ò¿ëÀÌ Àְڴ°¡?


±×¸®°í ¿ø½Ã ¸ðµâ¿¡ ´ëÇؼ­ ÁÖ¸ñÇÏÀÚ. CÀÇ Æ¯¼ºÁßÀÇ Çϳª°¡ ½±°Ô À¯Áöº¸¼öÇÒ
¼ö ÀÖ´Â ¿ø½Ã ¸ðµâ(.C)·Î ÂÉ°³Á® ÀÖÁö ¾ÊÀ» °æ¿ì Àüü·Î´Â Àб⠾î·Æ°Ô µÈ´Ù
´Â °ÍÀÌ´Ù.
¿ªÄÄÆÄÀÏ·¯°¡ ±×°ÍÀ» ¾î¶»°Ô Çϰڴ°¡? ¿ªÄÄÆÄÀÏ·¯´Â ÇϳªÀÇ °Å´ëÇÑ main()ÇÔ
¼ö¸¦ ¸¸µé¾î¼­ ¸ðµâ¼ºÀ» »ó½ÇÇÏ°Ô ÇÑ´Ù. ¶ÇÀº ÇÔ¼ö ÇϳªÇϳª¸¦ ÇϳªÀÇ ÆÄÀÏ·Î
¸¸µé·Á ÇÒ ¼ö ÀÖ´Ù. ÀüÀÚÀÇ °æ¿ì ¾µ¸ð ¾ø´Â °Å´ëÇÑ ÆÄÀÏÀ» »ý¼ºÇÏ°í µÎ ¹ø°
ÀÇ °æ¿ì staticÀÇ ÇÔ¼ö³ª, º¯¼ö¸¦ ºÎ¸¦ °æ¿ì ¹®Á¦¸¦ ¾ß±âÇÑ´Ù. ¿ªÄÄÆÄÀÏ·¯°¡
static º¯¼ö¸¦ global·Î ¸¸µé¼öµµ ÀÖÀ¸³ª, ¿ª½Ã Çã¿ëÇÒ ¼ö ¾ø´Â °ÍÀÌ´Ù.


¸¶Áö¸·À¸·Î ´ëºÎºÐÀÇ »ó¿ë ÀÀ¿ë ÇÁ·Î±×·¥µéÀº ¼öÇà½Ã°£ÀÌ Âª¾Æ¾ß ÇÏ´Â ±â´ÉµéÀº
¾î¼Àºí¸®·Î ÀÛ¼ºÇÑ´Ù´Â °ÍÀÌ°í ÀÌ°ÍÀº C·Î ¿ªÄÄÆÄÀÏÇϱⰡ °ÅÀÇ ºÒ°¡´ÉÇÏ´Ù´Â
°ÍÀÌ´Ù.


³»°¡ ¸»ÇßµíÀÌ ¼ûÀ» ¸ØÃßÁö¸¶¶ó. ¿ªÄÄÆÄÀÏÀ» °¡´ÉÇÏ°Ô ÇÏ´Â ±â¼úµéÀÌ ¹ßÀüÇÔ¿¡
µû¶ó¼­ »õ·Î¿î ÃÖÀûÈ­±â¿Í ¾ð¾î(C++°ú °°Àº)´Â ±×°°Àº °ÍÀ» ¸¸µé±â ´õ ¾î·Æ°Ô
ÇÒ °ÍÀÌ´Ù.


¿À·§µ¿¾È UNIX ÀÀ¿ëÇÁ·Î±×·¥Àº ÁöÀúºÐÇÑ ¼Ò½º ÄÚµå ÇüÅ·Π¹èÆ÷µÇ¾î(±â°è³ª ÀÐ
À» ¼ö ÀÖÁö Àΰ£Àº ÀÌÇØÇÒ ¼ö ¾ø´Â - ¸ðµç °ø¹é¹®ÀÚ¿Í ÄÚ¸ÇÆ®¸¦ Áö¿ì°í º¯¼öÀÌ
¸§Àº OIOI µîÀ¸·Î ¹Ù²Ù¾î) ÀúÀÛ±ÇÀ» º¸È£ÇÏ·Á Çß´Ù. ¿ªÄÄÆÄÀÏ·¯ÀÇ °á°ú¹°µµ
ÁöÀúºÐÇÑ ¼Ò½º ÄÚµå¿Í ¸¶Âù°¡Áö·Î ÀÌÇØÇϱ⠾î·Á¿ï °ÍÀÌ´Ù.

MS-WindowsÀÇ Æнº¿öµå ¾ÏÈ£´Â ¾î¶»°Ô µ¿ÀÛÇϳª?

ÀÌ FAQ´Â Wayne Hoxie¿¡ ÀÇÇؼ­ ÀÛ¼ºµÇ¾ú´Ù.

MS Win 3.1¿¡¼­ Æнº¿öµå ¿É¼ÇÀº ½±°Ô ¿ìȸÇÒ ¼ö ÀÖ´Ù. ±×·¯³ª, À©µµ¿ì¿¡¼­
¾î¶»°Ô Æнº¿öµå¸¦ ó¸®ÇÏ´ÂÁö ±Ã±ÝÇØ ÇÏ´Â »ç¶÷µéÀÌ ÀÖÀ» °ÍÀÌ´Ù. ½ÇÁ¦ Æнº
¿öµå¸¦ ¾Æ´Â °ÍÀÌ À¯¿ëÇÑ ¸¹Àº ÀÌÀ¯°¡ ÀÖ´Ù. UNIXÀÇ root Æнº¿öµå¿Í À©µµ¿ì
ÀÇ Æнº¿öµå¸¦ µ¿ÀÏÇÏ°Ô »ç¿ëÇÏ°í ÀÖ´Ù°í »ý°¢ÇØ º¸¶ó.

¾î·´ø, ¾Ë°Ô µÈ ¾Ë°í¸®ÁòÀ» Àü´ÞÇÏ°Ú´Ù.

Æнº¿öµå¸¦ Ä¡°í [OK] ¹öÆ°À» ´©¸£°í ³­ ´ÙÀ½ÀÇ °úÁ¤ºÎÅÍ ¼³¸íÀ» ÇÑ´Ù.

¸ðµç »ç¶÷ÀÌ(Àû¾îµµ Èï¹Ì¸¦ °¡Áö°í ÀÖ´Â) XOR ¿¬»êÀÌ ¹«¾ùÀÎÁö ¾Ë°í ÀÖ´Ù°í
°¡Á¤ÇÑ´Ù.

¸ÕÀú, Æнº¿öµåÀÇ ±æÀÌ°¡ ÀúÀåµÈ´Ù. ÀÌ°ÍÀ» 'len'À̶ó°í ºÎ¸£°Ú´Ù. ÀÔ·ÂµÈ ¹®
ÀÚ¿­À» ¾ÏȣȭÇÏ¿© ´Ù¸¥ ¹®ÀÚ¿­·Î ¹Ù²Û´Ù. ¸ÕÀú ÀÔ·ÂµÈ ¹®ÀÚ¿­À» 'plain text
(Æò¹®)'À̶ó°í ºÎ¸£°Ú´Ù. ±×¸®°í ¾ÏȣȭµÈ ¹®ÀÚ¿­(µÎ¹øÀÇ °úÁ¤À» °ÅÄ¡´Âµ¥)
À» 'hash1', 'hash2'¶ó°í ºÎ¸£°Ú´Ù. Æò¹®ÀÇ À§Ä¡´Â ÀÌ °úÁ¤¿¡¼­ Áß¿äÇѵ¥ ÀÌ
°ÍÀ» 'pos'¶ó°í ºÎ¸£ÀÚ. Çؽ³ °úÁ¤ÀÇ °¢ ´Ü°è¸¦ °ÅÄ¡°í³ª¼­, ¹®ÀÚ´Â À©µµ¿ì
°¡ Ưº°ÇÏ°Ô'special' »ý°¢ÇÏ´Â ¹®ÀÚ¿­°ú ºñ±³µÈ´Ù. ÀÌ ¹®ÀÚµéÀº '[ ] ='¿Í
ASCII 33 ÀÌÇϳª ASCII 126ÀÌ»óÀÇ ¹®ÀÚÀÌ´Ù. ÀÌ °Ë»ç ¿¬»êÀ» 'is_ok'¶ó°í
ºÎ¸£°Ú´Ù. ¸ðµç ÀÎÅؽº´Â 0À» ±âÁØÀ¸·Î ÇÑ´Ù.(´Ù½Ã ¸»ÇØ 8°³ÀÇ ¹®ÀÚ Æнº¿öµå
´Â 0ºÎÅÍ 7±îÁöÀÌ´Ù.)

ÀÌÁ¦, 'Æò¹®'ÀÇ Ã¹ ¹ø° ¹®ÀÚ´Â 'len'°ú xorµÇ¾î 'is_ok'·Î µé¾î°£´Ù. Á¤´ç
ÇÑ ¹®ÀÚ°¡ ¾Æ´Ñ °æ¿ì, ¿ø·¡ÀÇ 'Æò¹®'ÀÇ ¹®ÀÚ·Î ´ëÄ¡µÇ¾î ´ÙÀ½ ¿¬»êÀ¸·Î ÁøÇàÇÑ
´Ù. ´ÙÀ½ ¿¬»ê¿¡¼­ 'pos'¿Í xor ¿¬»êÀ» ÇÑ´Ù.(ÀÌ°ÍÀº ù ¹ø° ¿¬»ê¿¡¼­´Â ¼Ò
¿ë¾ø´Â °ÍÀÌ´Ù
¿Ö³ÄÇϸé 'len'ÀÌ 0ÀÌ°í 0°ú xorµÈ °ÍÀº ±× ÀÚ½ÅÀÌ µÇ±â ¶§¹®ÀÌ´Ù.) ±×¸®°í
'is_ok'·Î º¸³»°í ¿Ã¹Ù¸¥ °ÍÀÌ ¾Æ´Ò °æ¿ì ¿ø·¡ÀÇ °ÍÀ¸·Î ´ëÄ¡ÇÑ´Ù. (¹®ÀÚ ´ç)
¸¶Áö¸· ¿¬»êÀº xor¸¦ ¾ÕÀÇ 'Æò¹®'ÀÇ ¹®ÀÚ¿Í xorÇÏ´Â °ÍÀÌ´Ù. ÀÌÀü ¹®ÀÚ°¡ ¾ø
À¸¹Ç·Î,°íÁ¤µÈ °ª 42¸¦ 'Æò¹®'ÀÇ Ã¹ ¹ø° ¹®ÀÚ¿¡ ´ëÇØ »ç¿ëÇÑ´Ù. ÀÌ°Í
Àº 'is_ok'·Î º¸³»Áö°í ¸¸ÀÏ OK¶ó¸é, 'hash1'ÀÇ Ã¹ ¹ø° À§Ä¡¿¡ ÀúÀåµÈ´Ù.
ÀÌ °úÁ¤Àº Æò¹®ÀÇ ¸ðµç ¹®ÀÚ¿¡ ´ëÇØ ÀüºÎ ¼öÇàÇÑ´Ù. ´ÙÀ½ Æнº(pass)´Â ¸Å¿ì
À¯»çÇÏ´Ù. ½ÃÀÛÁ¡ÀÌ hash1ÀÇ ¸¶Áö¸· ¹®ÀÚÀÌ´Ù. ±×¸®°í °á°ú´Â µÚ¿¡¼­ ¾ÕÀ¸·Î
hash2¿¡ µé¾î°£´Ù. ¶ÇÇÑ, ¸¶Áö¸· xorÇÏ´Â ½ÃÁ¡¿¡¼­ ÀÌÀü ¹®ÀÚ¸¦ ÀÌ¿ëÇÏ´Â ´ë
½Å ÇöÀç ¹®ÀÚ ´ÙÀ½ÀÇ ¹®ÀÚ°¡ ÀÌ¿ëµÈ´Ù.
hash1¿¡¼­ ¸¶Áö¸· ´ÙÀ½¿¡ ³ª¿À´Â ¹®ÀÚ°¡ ¾øÀ¸¹Ç·Î, 42°ªÀÌ ¸¶Áö¸· ¹®ÀÚ´ë½Å¿¡
ÀÌ¿ëµÈ´Ù.
'hash2'´Â ¸¶Áö¸· ¹®ÀÚ¿­ÀÌ°í À©µµ¿ì°¡ CONTROL.INI¿¡ ÀúÀåÇÏ´Â °ªÀÌ´Ù.
Æнº¿öµå¸¦ º¹È£È­'decrypt'Çϱâ À§Çؼ­ À§ÀÇ °úÁ¤À» ´ÜÁö °Å²Ù·Î ÇÏ¸é µÈ
´Ù.
ÀÌÁ¦, ±â´Ù·È´ø °ÍÀÌ ¿Ô´Ù. ¿ì¸®¸¦ À§ÇØ ¾î·Á¿î ÀÏÀ» ÇØ ÁÙ C ÄÚµåÀÌ´Ù.


#include "stdlib.h"

#include "stdio.h"

#include "string.h"

int xor1(int i,int j)

{

int x;

x=i^j;

return (x>126||x<33||x==91||x==93||x==61)?i:x;

}

void main()

{

FILE *f;

int i,l;

char s[80],s1[80];

printf("Please enter the path to your Windows directory\n");

gets(s1);

sprintf(s,"%s%scontrol.ini",s1,s1[strlen(s1)-1]=='\\'?"":"\\");

if((f=fopen(s,"rt"))==NULL){

printf("File Error : %s\n",sys_errlist[errno]);

exit(0);

}

while(strnicmp(fgets(s1,70,f),"password",8)!=0&&!feof(f));

fclose(f);

strtok(s1,"=\n");

strcpy(s,strtok(NULL,"\n"));

i=strlen(s)-1;

for(l=i;l>-1;l--)

s1[l]=xor1(xor1(xor1(s[l],l==i?42:s[l+1]),l==i?0:l),i+1);

for(l=0;l
s[l]=xor1(xor1(xor1(s1[l],l?s1[l-1]:42),l?l:0),i+1);

printf("The Password is: %s\n",s);

}



Modify Delete Post Reply Backward Forward List
Powered by Kang Jul Ki