20-4 ���νd�ҤG�G�u�W�ɮת��ק�

¤@¯ë¦Ó¨¥¡A­Y­n±q»·¤è­×§ï¦øªA¾¹ºÝªººô­¶¡A¦³¤U¦C¨âºØ¤è¦¡¡G
  1. ¸g¥Ñ telnet ³s¤W¦øªA¾¹¡AµM«á¦A­×§ï¤§¡C
  2. ¸g¥Ñ ftp ³s¤W¦øªA¾¹¡A¤U¸ü¬ÛÃöÀɮרíקï«á¡A¦A¸g¥Ñ ftp ¤W¶ÇÀɮצܦøªA¾¹¡C¡]UltraEdit ´N¦³¦¹¤º«Øªº¥\¯à¡C¡^
¨Æ¹ê¤W¡A§Ú­Ì¤]¥i¥H¸g¥Ñ Web µ{¦¡ªº§Þ³N¡A¸g¥ÑÂsÄý¾¹¨Ó­×§ï»·ºÝªº¦øªA¾¹ÀɮסA½Ð¨£¦¹½d¨Ò¡G

Example¡]editfile/example.asp¡^¡G

¤W­z½d¨Òªº­ì©lÀɦp¤U¡G

­ì©lÀÉ¡]editfile/example.asp¡^¡G¡]¦Ç¦â°Ï°ì«ö¨â¤U§Y¥i«þ¨©¡^
<!--#include file="editfile.inc"-->
<%title="½u¤WÀɮ׭ק諸½d¨Ò"%>
<!--#include file="../head.inc"-->
<hr>
<!-- ==========¬°«O¦sÀɮק¹¾ã¡A½Ð¤Å­×§ï¦¹¦C¥H¤W¤§¸ê®Æ========== -->

¦¹­¶¸ê®Æ¥i¨Ñ­×§ï¡A½Ð«ö¤U F9¡A¸g¥Ñ»{ÃÒ«á¡A§Y¥i¶i¦æ­×§ï¡C¥ç¥i«ö¦¹<a href="editfile.asp?FileName=<%=Request.ServerVariables("PATH_INFO")%>">³sµ²</a>¥H¶i¦æÀÉ®×½s­×¡C
<p>
±ý´ú¸Õ¦¹ºô­¶¤§­×§ï¡A½Ð¶ñ¤J±zªº¤j¦W¡G
<ol>
<li>ªL¬F·½
<li>³¯¦¿§ø
<li>¸­¨Î¼z
</ol>
¡]½Ð¤Å¥ô·N­×§ï¡A¥H«OÅ@¨ä¥L¦P¾Ç¾Ç²ß¦¹½d¨Ò¤§Åv¯q¡AÁÂÁ¡I¡^

<!-- ==========¬°«O¦sÀɮק¹¾ã¡A½Ð¤Å­×§ï¦¹¦C¥H¤U¤§¸ê®Æ========== -->
<hr>
<!!--#include file="../foot.inc"-->

¦b¤W­z½d¨Ò¤¤¡A¥u­n¨Ï¥ÎªÌ«ö¤U F9¡A©ÎÂI¿ï¬Y­Ó¯S©w³sµ²¡A´N·|¶}±Ò±K½X»{ÃÒµøµ¡¡A­Y»{ÃÒ¦¨¥\¡A§Y¥i¶i¦æÀÉ®×½s­×¡C±ýÁA¸Ñ¦¹½d¨Ò¡A½Ð¦U¦ì¦P¾Çª½±µ¶}±Ò¦¹½d¨Ò¨Ã´ú¸Õ­×§ïÀɮתº¥\¯à¡C

¦³Ãö±K½X»{ÃÒ¹Lµ{¡A¤w¦b¤W¸`»¡©ú¡A¦b¦¹¤£¦A¸Ô­z¡C°ß¤@»Ý­nª`·Nªº¬O¡A¥Ñ©ó¨Ï¥ÎªÌ¥i¥H¸g¥Ñ¡u¼öÁä¡vªº¤è¦¡¨Ó¶i¦æ½s­×¥\¯àªº±Ò°Ê¡A¦]¦¹¦b¥Ø¼Ðºô­¶¡]¦b¦¹¨Ò¬O editfile.asp¡^¨ÃµLªk¸g¥Ñ Request.ServerVariables("HTTP_REFERER") ¨Ó¨ú±o¨Ó·½ºô­¶¡]¦b¦¹¨Ò¬O example.asp¡^¡A¦]¦¹§Ú­Ì¥²¶·¦b editfile.inc ³]©w session("source")¡A¥H¤è«K·í¨Ï¥ÎªÌ«ö¤U¡u²¾°£»{ÃÒ¡v®É¡Aµøµ¡¯à¸ü¤J¨Ó·½ºô­¶¡C

¦b¦¹½d¨Ò¤¤¡AÁ`¦@²o¯A¨ì¤»­ÓÀɮסA¤À§O»¡©ú¦p¤U¡G

example.asp
¦¹ºô­¶¥]§t¤F editfile.inc¡A©Ò¥H¥i¥H¶i¦æ¸g¥Ñ Web ªº½s­×¡C
editfile.inc
¦¹­¶¥]§t¤F¡u¼öÁä¡vªº©w¸q¡A¨Ã³]©w¤F session("source")¡C¥ô¦óºô­¶¥u­n«O§t¦¹ÀɮסA´N¨ã¦³»·¤è½s­×ªº¥\¯à¡C
editfile.asp
¥»­¶¤§¥ô°È¬°Åª¤J»Ý­n½s­×ªºÀɮסA¨Ã¥H textarea ªº¤è¦¡§e²{¦bÂsÄý¾¹¤¤¡A¥H¤è«K¨Ï¥ÎªÌ½s­×¡C¡]·íµM¡A¥»ºô­¶¥ç include ¤F auth.inc¡A¥H«K¦b¶}©ñÀÉ®×½s­×¤§«e¡A¯à¥ý¶i¦æ±K½Xªº»{ÃÒ¡C¡^
auth.inc
¥»­¶¤§¥ô°È¬°ÀËÅç»{ÃÒ¸ê°T¬O§_¦s¦b¡G
  1. ­Y¦s¦b¡A«h¤£°µ¥ô¦ó¨Æ¡C
  2. ­Y¤£¦s¦b¡A«h¸õ¥X»{ÃÒµøµ¡¡]auth.asp¡^¡A½Ð¨D¿é¤J±K½X¡A¨Ã¦b­ìµøµ¡¸ü¤J¨Ó·½ºô­¶¡]¦¹¨Ò¬° example.asp¡^¡C
¥ô¦ó»Ý­n±K½X«OÅ@¤§ºô­¶¡A¥u»Ý­n include ¦¹ÀɮסA§Y¥i¹F¨ì«OÅ@¥\¯à¡C(½Ðª`·N¡G¦b¥»¨Ò¤¤¡Asession("source") ¬O³]©w¦b edtifile.inc ¤§¤¤¡A¦Ó¤£¬O¦b auth.inc ¤§¤¤¡C)
auth.asp
¦¹­¶¤§¥Øªº¬°¶i¦æ±K½X»{ÃÒ¡G
  1. ­Y³q¹L¡A«h©ó­ìµøµ¡¶}±Ò³Q«OÅ@¤§¥Ø¼Ðºô­¶¡]¦¹¨Ò¬° editfile.asp¡^
  2. ­Y¤£³q¹L¡A«h½Ð¨D­«·s¿é¤J±b¸¹¡B±K½X
delauth.asp
¥»­¶¤§¥ô°È¬°®ø°£»{ÃÒ¸ê°T¡]§Y±NÅÜ¼Æ session("secret")³]©w¬° False¡^¡A¨Ã¸ü¤J¨Ó·½ºô­¶¡]¦¹¨Ò¬° example.asp¡^¡C

JScript µ{¦¡³]­p»PÀ³¥Î¡G¥Î©ó¦øªA¾¹ºÝªº ASP Àô¹Ò