GET,POST값 등을 JAVASCRIPT에서 사용할 경우[펌]
<script>
//<!-- or //<![CDATA[
~~~ 내용 ~~~
//--> or// ]]>
</script>
기본 자바스크립트 모양이 이럴건데
<!-- 등 때문에 살짝 문제가됨.
# 문제점
<script>
//<!--
var req = "<?=$_GET['req']?>";
//-->
</script>
처럼 할 경우
req의 내용이
";--> <script>alert('X');</script>
처럼 되어있다면?
<script>
//<!--
var req = "";--> <script>alert('X');</script>";
//-->
</script>
이렇게 결과가 되며
스크립트 동작에 문제가 있을 수 있다.(요즘 브라우저는 스크립트 공격으로 보고 스크립트 동작을 멈춘다.)
$_GET말고도 DB의 내용등 PHP에서 javascript로 값을 남겨 사용할 경우도 똑같다.
#해결법
<!-- 등의 HTML 주석 처리 부분을 빼고, htmlspecialchars() 를 사용한다.
<script>
var req = "<?=htmlspecialchars($_GET['req'])?>";
</script>
아래처럼 HTML엔터티 처리가되서 무사 OK
<script>
var req = "";--> <script>alert('X');</script>";
</script>
#추가
스크립트 코딩시 &나 >,< 같은 단어의 엔터티 처리가 힘드므로
<script>
var req = "<?=htmlspecialchars($_GET['req'])?>";
</script>
<script>
//<!--
var f = document.form1;
f.req.value = req;
//-->
</script>
처럼 값 선언 부분과 비지니스 처러 부분을 따로하고
비니지스 처리 부분만 HTML 주석처리 해주면 된다.
게시판 목록
프로그램
| 번호 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|
| 7130 | 11년 전 | 2295 | ||
| 7129 | 11년 전 | 699 | ||
| 7128 |
senseme
|
11년 전 | 1269 | |
| 7127 | 11년 전 | 1144 | ||
| 7126 | 11년 전 | 796 | ||
| 7125 | 11년 전 | 2936 | ||
| 7124 | 11년 전 | 1411 | ||
| 7123 |
잘살아보자
|
11년 전 | 1270 | |
| 7122 |
잘살아보자
|
11년 전 | 666 | |
| 7121 |
잘살아보자
|
11년 전 | 2998 | |
| 7120 |
잘살아보자
|
11년 전 | 2891 | |
| 7119 |
잘살아보자
|
11년 전 | 717 | |
| 7118 |
잘살아보자
|
11년 전 | 3420 | |
| 7117 |
잘살아보자
|
11년 전 | 838 | |
| 7116 | 11년 전 | 725 | ||
| 7115 | 11년 전 | 1012 | ||
| 7114 | 11년 전 | 821 | ||
| 7113 | 11년 전 | 636 | ||
| 7112 | 11년 전 | 1059 | ||
| 7111 | 11년 전 | 1778 | ||
| 7110 | 11년 전 | 1016 | ||
| 7109 |
버섯먹은나
|
11년 전 | 776 | |
| 7108 | 11년 전 | 613 | ||
| 7107 | 11년 전 | 2388 | ||
| 7106 | 11년 전 | 1940 | ||
| 7105 | 11년 전 | 2474 | ||
| 7104 | 11년 전 | 1403 | ||
| 7103 |
|
11년 전 | 2679 | |
| 7102 | 11년 전 | 3101 | ||
| 7101 | 11년 전 | 4427 | ||
| 7100 | 11년 전 | 5779 | ||
| 7099 | 11년 전 | 2122 | ||
| 7098 | 11년 전 | 1701 | ||
| 7097 | 11년 전 | 1437 | ||
| 7096 | 11년 전 | 1110 | ||
| 7095 |
잘살아보자
|
11년 전 | 849 | |
| 7094 |
잘살아보자
|
11년 전 | 1036 | |
| 7093 |
잘살아보자
|
11년 전 | 913 | |
| 7092 |
잘살아보자
|
11년 전 | 1399 | |
| 7091 |
잘살아보자
|
11년 전 | 2194 | |
| 7090 |
잘살아보자
|
11년 전 | 867 | |
| 7089 | 11년 전 | 1046 | ||
| 7088 | 11년 전 | 1700 | ||
| 7087 | 11년 전 | 1394 | ||
| 7086 | 11년 전 | 1282 | ||
| 7085 |
|
11년 전 | 1214 | |
| 7084 | 11년 전 | 1132 | ||
| 7083 | 11년 전 | 3481 | ||
| 7082 | 11년 전 | 1125 | ||
| 7081 | 11년 전 | 1726 | ||
| 7080 | 11년 전 | 2003 | ||
| 7079 | 11년 전 | 1304 | ||
| 7078 | 11년 전 | 1287 | ||
| 7077 | 11년 전 | 1279 | ||
| 7076 | 11년 전 | 744 | ||
| 7075 | 11년 전 | 1143 | ||
| 7074 |
네이비칼라
|
11년 전 | 1490 | |
| 7073 | 11년 전 | 1458 | ||
| 7072 |
|
11년 전 | 822 | |
| 7071 | 11년 전 | 1172 | ||
| 7070 | 11년 전 | 926 | ||
| 7069 | 11년 전 | 1682 | ||
| 7068 | 11년 전 | 1328 | ||
| 7067 |
TPSint
|
11년 전 | 708 | |
| 7066 | 11년 전 | 2139 | ||
| 7065 | 11년 전 | 6623 | ||
| 7064 | 11년 전 | 1280 | ||
| 7063 | 11년 전 | 1125 | ||
| 7062 | 11년 전 | 1059 | ||
| 7061 | 11년 전 | 899 | ||
| 7060 | 11년 전 | 1435 | ||
| 7059 | 11년 전 | 839 | ||
| 7058 |
EngineMan
|
11년 전 | 3386 | |
| 7057 | 11년 전 | 1234 | ||
| 7056 | 11년 전 | 1628 | ||
| 7055 | 11년 전 | 999 | ||
| 7054 | 11년 전 | 2638 | ||
| 7053 |
네이비칼라
|
11년 전 | 1273 | |
| 7052 | 11년 전 | 2559 | ||
| 7051 | 11년 전 | 1923 | ||
| 7050 | 11년 전 | 2442 | ||
| 7049 | 11년 전 | 1382 | ||
| 7048 | 11년 전 | 2514 | ||
| 7047 | 11년 전 | 1331 | ||
| 7046 | 11년 전 | 1015 | ||
| 7045 | 11년 전 | 1039 | ||
| 7044 | 11년 전 | 5427 | ||
| 7043 | 11년 전 | 1213 | ||
| 7042 | 11년 전 | 771 | ||
| 7041 |
열라뽕똬이
|
11년 전 | 746 | |
| 7040 | 11년 전 | 1096 | ||
| 7039 | 11년 전 | 1446 | ||
| 7038 | 11년 전 | 1858 | ||
| 7037 | 11년 전 | 2164 | ||
| 7036 | 11년 전 | 1079 | ||
| 7035 | 11년 전 | 1398 | ||
| 7034 | 11년 전 | 1337 | ||
| 7033 |
열라뽕똬이
|
11년 전 | 986 | |
| 7032 | 11년 전 | 747 | ||
| 7031 | 11년 전 | 2172 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기