³¯Â¥: 1996-06-03 | ±Û¾´ÀÌ: µµ¾Æ | 8463 ¹ø | ÇÁ¸°Æ® | ¸ÞÀϷκ¸³»±â

Á¦ 3°­ - ¿ÜºÎÇÔ¼ö È£Ãâ½Ã ÁÖÀÇÁ¡


eval(), exec(), popen()À» Àý´ë »ç¿ëÇؼ­´Â ¾ÈµÈ´Ù´Â °ÍÀº ¾Æ´Ï´Ù. À̰͵éÀ» »ç¿ëÇϱâ Àü¿¡ ¾î¶² ¸ÞÄ«´ÏÁò¿¡ ÀÇÇؼ­ ÀÌ ¸í·É¾îµéÀÌ µ¿ÀÛÇÏ´ÂÁö¸¦ Á¤È®ÇÏ°Ô ÀÌÇØÇÏ°í ÀÖ¾î¾ß ÇÑ´Ù.

¾î¶² °æ¿ì¿¡´Â »ç¿ëÀÚ ÀÔ·ÂÀ» ½©À» ÅëÇؼ­ º¸³»´Â °ÍÀ» ÇÇÇÒ ¼öµµ ÀÖ´Ù. ¿¹¸¦ µé¾î sendmail ÇÁ·Î±×·¥À¸·Î ¼ö½ÅÀÚÀÇ ÁÖ¼Ò¸¦ º¸³»´Â °æ¿ì '-t' ¿É¼ÇÀ» »ç¿ëÇÏ¸é ¸í·ÉÇà »ó¿¡¼­ ¼ö½ÅÀÚ ÁÖ¼Ò¸¦ ¹Þ¾ÆµéÀÌÁö ¾Ê°í e-mail ÇØ´õ Áß¿¡ 'To:' Çʵ忡 ÀÖ´Â ÁÖ¼Ò·Î ¸ÞÀÏÀ» º¸³»°Ô µÈ´Ù. µû¶ó¼­ ¾ÕÀÇ ¿¹´Â ÀÌ ±â´ÉÀ» »ç¿ëÇؼ­ ´ÙÀ½°ú °°ÀÌ ¹Ù²Ü ¼ö ÀÖ´Ù.

$mailto = &get_name_from_input; # read the address from form
open (MAIL,"| /usr/lib/sendmail -t -oi");
print MAIL <<END;
To: $mailto
From: me (me\@nowhere.com)
Subject: nothing much

Hi there!
END
close MAIL;

ÀÌ ÇÁ·Î±×·¥¿¡¼­´Â ÇÑ ¶óÀÎÀÇ Ã³À½¿¡ '.'ÀÌ ÀÖ´õ¶óµµ sendmailÀÌ ³¡³ªÁö ¾Êµµ·Ï Çϱâ À§Çؼ­ '-oi'¶ó´Â ¿É¼Çµµ »ç¿ëÇÏ°í ÀÖ´Ù. C ÇÁ·Î±×·¥¿¡¼­´Â system()À¸·Î--/bin/shÀ» ÅëÇؼ­ ¿ÜºÎ ¸í·ÉÀ» ¼öÇàÇÑ´Ù¦¡¸í·ÉÀ» ¼öÇàÇÏ´Â °Íº¸´Ù´Â exec()ÇÔ¼ö¸¦ »ç¿ëÇؼ­ ¿ÜºÎ ÇÁ·Î±×·¥À» ¼öÇàÇÏ´Â °ÍÀÌ ¹Ù¶÷Á÷ÇÏ´Ù.

µÇµµ·Ï ½©À» ¼öÇàÇÏÁö ¾Ê°í ÀÛ¾÷À» ¼öÇàÇÏ´Â ¹æ¹ýÀ» ã¾Æ¾ß ÇÑ´Ù. ¾î¿ ¼ö ¾øÀÌ ½©À» »ç¿ëÇØ¾ß ÇÏ´Â °æ¿ì¿¡´Â ½© ¸ÞŸ¹®ÀÚµéÀÌ ÀÖ´ÂÁö ÀÔ·ÂÀ» ¹Ýµå½Ã °Ë»çÇØ¾ß ÇÑ´Ù. ½© ¸ÞŸ¹®ÀÚµé Áß¿¡ °Ë»çÇØ¾ß µÉ °ÍµéÀº ´ÙÀ½°ú °°´Ù.

&;`'"|*?~<>^()[]{}$\n\r

±×¸®°í »ç¿ëÀÚÀÇ ÀÔ·ÂÀÌ ¿øÇÏ´Â ¸ð¾ç´ë·Î ÀԷµǾú´ÂÁö ¹Ýµå½Ã °Ë»çÇÏ´Â °ÍÀÌ ¹Ù¶÷Á÷ÇÏ´Ù. ¿¹¸¦ µé¾î e-mail ÁÖ¼Ò¸¦ Á¦´ë·Î ÀÔ·ÂÇß´ÂÁö °Ë»çÇغ¸±â À§Çؼ­´Â ´ÙÀ½°ú °°ÀÌ ÇÒ ¼ö ÀÖ´Ù.

$mail_to = &get_name_from_input; # read the address from form
unless ($mail_to =~ /^[\w-.]+\@[\w-.]+$/) {
   die 'Address not in form [email protected]';
}


´ÙÀ½±Û: Á¦ 4°­ - ÆÞ ¾ð¾î·Î ¾ÈÀüÇÑ ½ºÅ©¸³Æ® ÀÛ¼ºÇϱâ (10064)1996-06-04
ÀÌÀü±Û: Á¦ 2°­ - CGI ÇÁ·Î±×·¡¹Ö½Ã ÁÖÀÇÁ¡ (24379)1996-06-02

¼¼»ó»ç´Â À̾߱â



RSS ±¸µ¶ (À͸í | ȸ¿ø | °­Á | Æ÷·³)
(C) 1996 ~ 2017 QAOS.com All rights reserved.