97, 1/4 ȸ¿ø°¡ÀÔ  ·Î±×ÀΠ 
   babyalpha
   http://www.babyalpha.net
   µ¿¿µ»ó 7¹ø ÆÄÆ®ÀÔ´Ï´Ù.

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


ÇöÀç 7~80% °¡·®¹Û¿¡ ¿Ï·áµÇÁö ¾Ê¾Ò½À´Ï´Ù.
À̹ø µ¿¿µ»óÀº µé¸®Áö ¾Ê´Â ±¸°£ÀÌ Á» ¸¹³×¿ä.
Á¦´ë·Î µé¸®Áö ¾ÊÀººÎºÐ¶§¹®¿¡ ÇÑ±Û ¹ø¿ª ¶ÇÇÑ ½±Áö ¾Ê¾Ò´ø°Å°°³×¿ä.

À̹øÁÖ Á¶±Ý ´õ ½Ã°£À» ³»¾î¼­ ¼ÕÁ» ´õ º¸°Ú½À´Ï´Ù.
¿ì¼± Áö±Ý±îÁö ÇÑ ³»¿ë ¿Ã¸®°Ú½À´Ï´Ù.


µ¿¿µ»ó ÆÄÆ® 7 ³»¿ë...

um, I'm going to have to move on with the presentation here.
ÇÁ·¹Á¨Å×À̼ÇÀ» °è¼Ó ÁøÇàÇÏ°Ú½À´Ï´Ù.
We're real short on time.
½Ã°£ÀÌ ¸¹Áö ¾Ê³×¿ä.
Um¡¦ But I did find the di¡¦..  function, w¡¦. calling 'em.

It actually ¡¦¡¦  get through internet connection
ÀÌ ÇÔ¼ö´Â Á÷Á¢ ¡¦.. ÀÎÅͳݿ¡ ¿¬°áÀ» ÇÕ´Ï´Ù.
and it sets up by default ¡¦¡¦. 4:43 ¡¦¡¦..
±×¸®°í ¡¦. ÀÇ µðÆúÆ® °ªÀ» 4:43 À¸·Î ¼³Á¤ÇÕ´Ï´Ù.
so that's the example, and I apologize I didn't have little bit more time to demonstrate that.
Áö±Ý±îÁö ¼³¸íÇÑ°Ô ¸»¾¸µå¸° ¿¹ÀÔ´Ï´Ù. µ¥¸ó½ºÆ®·¹À̼ÇÀ» À§ÇØ ½Ã°£ÀÌ Á» ºÎÁ·ÇÏ¿© Á˼ÛÇÕ´Ï´Ù.
¡¦¡¦¡¦¡¦.. this is what your idea that we have.

because ¡¦ unpacked ¡¦..you get all of ¡¦¡¦

your imports and all the ¡¦¡¦..

pieces that you want to see.

Briefly ¡¦¡¦. I didn't get to cover all of them.
°£´ÜÈ÷ ¼³¸íÇÏ¸é ¡¦¡¦. ÀüüÀûÀ¸·Î ¼³¸íÀ» µå¸®Áö ¸øÇß½À´Ï´Ù.
Some of the main conventions that I use that I find, keep me on track, and work for me,
Á¦°¡ ÁÖ·Î »ç¿ëÇÏ´Â conventions¸¦ ¼Ò°³ÇØ µå¸®¸é, À½, Á¦°¡ »ç¿ëÇϱ⿡, ÃßÀûÇϱ⿡, Àú¶û °¡Àå Àß ¸Â´Â ¹æ¹ýÀº,
are to bond that analysis go through and find any return instructions,
ºÐ¼®À» Çϸ鼭 ºÐ¼®µÈ ³»¿ëÀ» bondÇÏ°í ¸®ÅÏ instruction¿¡ ´ëÇØ Ã£½À´Ï´Ù.
those are places where your function ¡¦.
±×·± ºÎºÐµéÀÌ Ã£À¸·Á´Â ÇÔ¼ö°¡ ÀÖ´Â °÷ ÀÔ´Ï´Ù.
Mark those first. Because then when you're going trying to figure out, ok, follow this function,
±× ºÎºÐÀ» ¸ÕÀú üũÇÕ´Ï´Ù.
it checks the return value, it seems to be 0 or 1, I don't know which one is success, I don't know which one is failure, oh,
¸®ÅÏ °ªÀ» È®ÀÎÇϸé, 0 ȤÀº 1ÀÏ °ÍÀÔ´Ï´Ù. ¾î¶² °ªÀÌ ¼º°øÀÎÁö ½ÇÆÐÀÎÁö ¾ËÁö ¸øÇÏÁö¸¸,
guess what, this one goes straight to the return function, so that's probably my failure rates,

where the other one go straight down the rest of the, of the, function.
´Ù¸¥ ºÎºÐÀ» ÇÔ¼ö¸¦ ³¡±îÁö Ÿ°í ³»·Á°©´Ï´Ù.
Mark loops. The reason for those are when you are working on a function and there's bunch of these labels which all
·çÇÁ´Â Ç¥½ÃÇϽʽÿä. Ç¥½ÃÇÏ´Â ÀÌÀ¯´Â ÇϳªÀÇ ÇÔ¼ö¸¦ ºÐ¼®Çϸ鼭 ÀÌ·¯ÇÑ Ç¥½ÃµéÀÌ ¸ðµÎ ¸Þ¸ð¸® À§Ä¡¸¦ ³ªÅ¸³»´Â °ÍÀ̸é
initially saying, location of memory address,

if you just mark them as loops,
±×³É ·çÇÁ¶ó°í Ç¥½Ã¸¦ ÇØÁÖ¸é
and I don't ¡¦¡¦.     zero to one, or two, three, I don't care
±×·¸´Ù¸é¡¦.. 0À̵ç 1, ȤÀº 2, 3, »ó°ü¾ø½À´Ï´Ù.
initially, what the loop does.
·çÇÁ°¡ ¹«¾ùÀ» ÇÏ´ÂÁö -----??
Um, that's one more label that you don't have to identify, worry about naming.
±×·¸°Ô µÇ¸é ¶ÇÇϳªÀÇ ¶óº§À» È®ÀÎÇÒ ÇÊ¿ä ¾ø°í ¸íĪÀ» ¾î¶»°Ô ÇؾßÇÒÁö »ý°¢ÇÏÁö ¾Ê¾Æµµ µË´Ï´Ù.
Name your variables as quick as you can, um, even if you get it wrong initially
º¯¼ö¸í¿¡ ¸íĪÀ» ÃÖ´ëÇÑ ´Ù¼¼¿ä. ¸íĪÀ» À߸ø ´Þ´õ¶óµµ ¸»ÀÌÁÒ.
often time you'll find a scratch variable that you've name something because it's ¡¦..  

later on you find it being used for something completely different.
³ªÁß¿¡ ºÐ¼®ÇØ ³ª°¡´Ùº¸¸é ÀüÇô ´Ù¸¥ ¿ëµµ·Î »ç¿ëÇϴ°ÍÀ» º¼ ¼ö ÀÖ½À´Ï´Ù.
What turns out to be a temp variable but at least you've named it, initially while you're working on the program.
Àӽú¯¼ö·Î È®ÀεǴ °Íµµ º¼¼ö ÀÖ½À´Ï´Ù. ±×·¯³ª Ç¥½Ã¸¦ Çß¾ú´Ù´Â °Í, ÇÁ·Î±×·¥À» ºÐ¼®Çϸ鼭 ¹Ì¸® Ç¥½ÃÇß´Ù´Â °ÍÀÌ Áß¿äÇÕ´Ï´Ù.
Name convention, by that I mean, when you're trace through a function, and you've got an option

¡¦. jumps to ¡¦¡¦¡¦¡¦
There two things you can do there.
ÀÌ·± »óȲ¿¡¼­ µÎ°¡Áö ¿É¼ÇÀÌ ÀÖ½À´Ï´Ù.
One is, name that label with where, how you got to it.
Çϳª´Â, ¶óº§À» ¾î¶»°Ô ±× À§Ä¡¿¡ °¡°Ô µÇ¾ú´ÂÁö Àû´Â °ÍÀÔ´Ï´Ù.
I, OK, I just checked my internet connection status, I got success, I'm going to name that label that I'm going to internet success.
OK, ¹æ±Ý ÀÎÅÍ³Ý ¿¬°áÀ» È®ÀÎÇÏ¿´°í, ¼º°øµÈ °ÍÀ» È®ÀÎÇÏ¿´À¸¸é, ¶óº§À» 'ÀÎÅÍ³Ý ¿¬°á ¼º°ø' À¸·Î ÀûÀ» °ÍÀÔ´Ï´Ù.
That's actually easy, but that's not the most proper way to do it.
ÀÌ·¸°Ô ÀûÀ¸¸é ½±±â´Â ÇÕ´Ï´Ù. ±×·¯³ª
Reason being, ¡¦¡¦..
more than one part of the program, that jumps to that label.
ÇÁ·Î±×·¥ ¿©·¯±ºµ¥¿¡¼­ ±× ºÎºÐÀ» È£ÃâÇÏ°Ô µË´Ï´Ù. ±×ÂÊ ¶óº§·Î ÁøÇàÀ» ÇϰԵǸç,
See when you try name labels,

what I call the 'From Function', what the, what below that label, what it's function is, name it that.

So it turns out ¡¦¡¦ connection success,
it's says try the FTP, name it try the FTP.
FTP ¿¬°á ½Ãµµ¸¦ Çغ¸¶ó°í µÇ¾îÀÖÀ¸¸é, 'FTP ½Ãµµ'¶ó°í Àû½À´Ï´Ù.
Um.. I didn't get the chance to show you ¡¦ tricks ¡¦
À½, ¡¦ trick À» º¸¿©µå¸± ½Ã°£ÀÌ ¾ø¾ú³×¿ä.
I'm short on time, but I have a register function
½Ã°£ÀÌ ºÎÁ·ÇÕ´Ï´Ù. ¡¦.
to comment every single line. even really really obvious stuff.
¸ðµç ¶óÀο¡ Ä¿¸àÆ®¸¦ ´Þ¾Æ¾ßÇÕ´Ï´Ù. ´ç¿¬ÇÑ ³»¿ëµµ ¸»ÀÌÁÒ.
If you get something like xor %eax %eax, which is assembly shortcut for setting %eax to 0.
¸¸¾à xor %eax %eax °°Àº ¸í·É¾î¸¦ º¸°ÔµÇ¸é, %eax¸¦ 0À¸·Î ¼¼ÆÃÇÏ´Â ¾î¼Àºí¸®¾îÀÇ ´ÜÃà¸í·É¾î ÀÔ´Ï´Ù.
I would go and tag a, uh, a, uh, comment and I'll write in eax = 0.
ÀÌ·¯ÇÑ ¸í·É¾î´Â eax = 0 À̶ó°í Ä¿¸ÇÆ®¸¦ ´ä´Ï´Ù.
Reason for that is later on, when I'm going up the function there is ¡¦.
ÀÌ·¸°Ô Àû´Â ÀÌÀ¯´Â ³ªÁß¿¡ ¾î¶°ÇÑ ÇÔ¼ö¸¦ µû¶ó°¡´Ùº¸¸é
comment sticks out that tells me where exactly eax is now for me to figure out again.
eax°¡ ÇöÀç ¾î¶² °ªÀÎÁö Á¤È®ÇÏ°Ô ¾Ë·ÁÁÖ´Â Ä¿¸àÆ®¸¦ º¼¼ö ÀÖ½À´Ï´Ù.
So I try to comment every single line.
±×·¡¼­ ¸ðµç ¶óÀο¡ Ä¿¸ÇÆ®¸¦ ´ä´Ï´Ù.
I think these are some of the habits of people who have some experience doing disassembly.
Á¦ »ý°¢¿¡´Â µð½º¾î¼Àºí¸®¿¡ ´ëÇØ °æÇèÀÌ ÀÖÀ¸½Å ºÐµéÀº ´ëºÎºÐ ÀÌ·± ¹æ½ÄÀ¸·Î Ç¥½Ã¸¦ ÇÕ´Ï´Ù.
I talked with Rico about this a bit, and he tell me he does almost exactly the same sort of things.
¸®ÄÚ¿Í ÀÌ·¯ÇÑ ³»¿ë¿¡ ´ëÇؼ­ ¾ê±â¸¦ ÇغýÀ´Ï´Ù. ±×°¡ ¸»Çϱ⸦ Àú¿Í °ÅÀÇ °°Àº ¹æ½ÄÀ¸·Î Ç¥½Ã¸¦ ÇÑ´Ù°í ÇÕ´Ï´Ù.
If you're ¡¦.. beginner ¡¦some of these tips will hopefully be helpful.
¸¸¾à ´ç½ÅÀÌ ¡¦.. Ãʺ¸¡¦ Á¦°¡ ¸»¾¸ µå¸®´Â ¸î°¡ÁöÀÇ ÆÁÀÌ µµ¿òÀÌ µÇ°Ú±º¿ä.
Again, moving on quickly, some of the barriers we find here in disassembly.
´Ù½Ã, Á¶±Ý »¡¸® ÁøÇàÇÏ°Ú½À´Ï´Ù. µð½º¾î¼Àºí¸®¸¦ ÇÏ´Ùº¸¸é ¿©·¯ ÀåÇع°À» ¸¸³ª°Ô µË´Ï´Ù.
Packing and crypting which Rico's going to demonstrate, ¡¦ haven't a lot of time but
ÆÐÅ·°ú Å©¸³Æÿ¡ ´ëÇؼ­´Â ¸®ÄÚ°¡ µ¥¸ó½ºÆ®·¹À̼ÇÀ» ÁøÇàÇÏ°Ú½À´Ï´Ù¡¦.. ¸¹Àº ½Ã°£ÀÌ ³²¾Æ ÀÖÁö´Â ¾ÊÁö¸¸
we're going to do our best to do a demonstration here.
µ¥¸ó½ºÆ®·¹À̼ÇÀ» ¸ðµÎ º¸¿©µå¸±¼ö ÀÖµµ·Ï ÃÖ¼±À» ´Ù ÇÏ°í ÀÖ½À´Ï´Ù.
¡¦.. off the orientation.
I just showed you a bunch of places where, um, C++ is causing a little bit of grief.
C++°¡ Â¥Áõ³ª°ÔÇÏ´Â ¸î¸î ºÎºÐÀ» º¸¿©µå·È½À´Ï´Ù.
Um, I didn't show it there ¡¦ example, I didn't have the time too,
¿©±â¼­´Â º¸¿©µå¸®Áö ¾Ê¾Ò´Âµ¥ ¡¦. ½Ã°£ÀÌ ºÎÁ·ÇÏ¿´½À´Ï´Ù.
C stream, um, libraries extensively, and unfortunately
C ½ºÆ®¸², À½,
IDA Pro doesn't have signatures for those.
IDA Pro´Â ÀÌ·¯ÇÑ °ÍµéÀÇ ½Ã±×´ÏÃĸ¦ °¡Áö°í ÀÖÁö ¾Ê½À´Ï´Ù.
So there where good couple of dozen C stream functions that, um, I didn't know exactly
±×·¡¼­ ¿©±â¼­ º¸¸é 2-30°³ÀÇ C ½ºÆ®¸² ÇÔ¼ö¿¡ ´ëÇؼ­, À½, Àúµµ Á¦´ë·Î ¾ËÁö ¸øÇßÀ¸¸ç
what they where, so I, um, I'm guess in bunch of places.
¹«¾ùÀÎÁöµµ ¸ô¶ú½À´Ï´Ù. ±×·¡¼­, À½, ¿©·¯±ºµ¥¿¡¼­ guess¸¦ ÇؾßÇß½À´Ï´Ù.
And it's really no fun, ¡¦¡¦. a library call.
±×¸®°í ÁøÂ¥ ÀÌ·¯ÇÑ ¡¦¡¦ ¶óÀ̺귯¸® È£ÃâÀº Àç¹Ì¾ø½À´Ï´Ù.
It's complicated and feels like you've wasted your time when you are done
¸Å¿ìº¹ÀâÇÏ¸ç ³¡³­ ´ÙÀ½¿¡ ½Ã°£À» ¿ÏÀü ³¶ºñÇÑ ´À³¦ÀÌÁÒ.
because it's just a string copy, or something like that.
¿Ö³ÄÇϸé ÇÏ´Â °ÍÀº ´Ü¼øÇÑ ½ºÆ®¸µ º¹»ç³ª ±×·± ´Ü¼øÇÑ ÀÛ¾÷À̰ŵç¿ä.
P-Code, um, there's
P-ÄÚµå, À½,
Visual Basic or Jar file.
Which are semi-interpretive functions.
¼¼¹Ì-interpretive ÇÔ¼ö°¡ ÀÖ½À´Ï´Ù.
some, um, you know, P-code
this is the, uh, the terminal language, and those can some times be a challenge.
ÀÌ°ÍÀº, À½, Å͹̳Π¾ð¾î ÀÔ´Ï´Ù. ±×¸®°í ¾î¶² »óȲ¿¡¼­´Â ¸Å¿ì challenging ÇÕ´Ï´Ù.
There's not a lot of really fantastic tools, I'm looking for analyzing some of those things, um,
ÀÌ·±°ÍÀ» ÇϱâÀ§ÇÑ ¸ÚÁø ÅøÀÌ ÀÖÁö´Â ¾Ê½À´Ï´Ù. ÀÌ·± °ÍÀ» ÇØÁÖ´Â ±×·± ¸ÚÁø ÅøÀ» ã°í ÀÖ±ä ÇÕ´Ï´Ù¡¦ ¸¸Àº¡¦
anti-virus companies have
¹é½Å ¾÷ü¿¡¼­µµ ...
¡¦ of tools that they don't share.
°ø°³ÇÏÁö ¾Ê´Â ÅøÀÌ ÀÖÀ»µí ÇÕ´Ï´Ù.
And you'll find a few if you go to a search engine.
°Ë»ö ¿£ÁøÀ» »ç¿ëÇؼ­µµ ¸î°³ ãÀ»¼ö ÀÖÀ» °Ì´Ï´Ù.
And some of the applications are pain in the butt too.
±×¸®°í ¸î¸î ¾îÇø®ÄÉÀ̼ÇÀº ÁøÂ¥ Â¥Áõ³³´Ï´Ù.
Where you go and over-written by something else.

IDA Pro doesn't have a great way to to represent this.
IDA Pro´Â ÀÌ·¯ÇÑ °ÍÀ» Ç¥½ÃÇÏ´Â ¹æ½ÄÀÌ ÁÁÁö ¾Ê½À´Ï´Ù.






  Hit : 2471     Date : 2011/08/22 11:25



    
¸Û¸Û ¼ö°íÇϼ̽À´Ï´Ù.!! 2011/08/23  
     Á¦°¡ »ç¿ëÇÏ´Â ¸®½º´× ¹æ¹ý ÆÁ.. [4] Prox 05/21 3243
     [°øÁö] µ¿¿µ»ó ºÐÇÒ ¹æ¹ýÀÔ´Ï´Ù. ¸Û¸Û 05/11 3195
     [°øÁö] ¹ø¿ªÆÀ ¸â¹ö ¸ñ·ÏÀÔ´Ï´Ù. [33] ¸Û¸Û 05/03 3185
     [°øÁö] RECON 2005 ¹ßÇ¥ÀÚ·á ¸ñ·ÏÀÔ´Ï´Ù ¸Û¸Û 05/03 2989
93   Èå¾Æ Á˼ÛÇØ¿ä ¤Ð¤Ð¤Ð 11¹ø µ¿¿µ»ó ¹ø¿ª~     dex023
04/14 2733
92   [Á¦ 2ȸ] µ¿¿µ»ó ÆÄÀÏ[1]     lycan
07/16 2683
91   Àú Æ÷±â..Çؾ߰ڳ׿©     d4rkang3l
08/07 2651
90   ³²Àº 10¹ø, 11¹ø ÆÄÆ® ¸®½º´×&¹ø¿ª ÇØÁÖ½Ç ºÐ ã½À´Ï´Ù.[5]     ¸Û¸Û
11/17 2493
  µ¿¿µ»ó 7¹ø ÆÄÆ®ÀÔ´Ï´Ù.[1]     babyalpha
08/22 2470
88   7¹ø, 9¹ø, 10¹ø, 11¹ø ÆÄÆ® ¸Ã¾ÆÁÖ½Ç ºÐ ¸ð½Ê´Ï´Ù~[9]     ¸Û¸Û
08/09 2396
87   Áß±¹¾î ¹ø¿ªÀº ÇÊ¿ä ¾ø³ª¿ä?     ºÒ²É¿¬ÁÖ°¡
01/02 2345
86   hackerwannabe´Ô, neb91´Ô, eplesky´Ô ÁøÇà»óȲ ¸»¾¸ÇØ Áֽñ⠹ٶø´Ï´Ù.[2]     ¸Û¸Û
08/23 2341
85   9¹øÆÄÆ® dictationÀÔ´Ï´Ù[13]     neb91
08/26 2302
     [Çʵ¶] ¸®½º´× & ¹ø¿ª ½ÃÀÇ ±ÔÄ¢ÀÔ´Ï´Ù. [2] ¸Û¸Û 05/09 2252
83   l0phrack, heeya90, goodfacesong´ÔµéÀº ÁøÇà»óȲÀ» Àû¾îÁÖ¼¼¿ä[2]     ¸Û¸Û
08/08 2251
82   ÆÄÆ® 3 ºÐ·® ÀÔ´Ï´Ù[1]     L0phrack
08/09 2222
81   ÁøÇà»óȲ Á¤¸® (¸Þ¸ð¿ë)     ¸Û¸Û
08/05 2221
     [°øÁö] WIKI¸¦ ÀÌ¿ëÇÑ Çùµ¿ ¹ø¿ª ¹æ¹ýÀÔ´Ï´Ù. ¸Û¸Û 05/13 2218
79   ¹ø¿ª ÁøÇàÀÌ Á» ´õµð³×¿ä.[2]     babyalpha
08/06 2177
     RECON 2006 ±¦Âú¾Æº¸ÀÌ´Â ¹ßÇ¥ÁÖÁ¦µé ¸Þ¸ð ¸Û¸Û 06/14 2155
     [°øÁö] ÁÖ±âÀûÀ¸·Î Á¤ÆÃÀ» ÇÏ·Á°í ÇÕ´Ï´Ù. [11] ¸Û¸Û 05/11 2147
76   [1ȸ] µ¿¿µ»ó ºÐÇÒÇØÁÖ½Ç ºÐ![2]     ¸Û¸Û
05/03 2126
75   [Á¦ 2ȸ] Á¦ 2ȸ ¸®½º´×&¹ø¿ª ÀÛ¾÷À» ½ÃÀÛÇÕ´Ï´Ù.[20]     ¸Û¸Û
07/14 2060
74   ¸â¹öºÐµé ³×ÀÌÆ®¿Â or Ä«Åå or Æ®À§ÅÍ ±³È¯ÇØ¿ä[4]     ¸Û¸Û
05/03 2045
73   µÎ ¹ø° ¹ø¿ª ´ë»ó ¹Ì¸® Á¤ÇսôÙ~[8]     ¸Û¸Û
05/25 2029
1 [2][3][4]

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