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 주석처리 해주면 된다.
게시판 목록
프로그램
| 번호 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|
| 7830 | 10년 전 | 451 | ||
| 7829 |
|
10년 전 | 640 | |
| 7828 | 10년 전 | 561 | ||
| 7827 | 10년 전 | 457 | ||
| 7826 | 10년 전 | 470 | ||
| 7825 | 10년 전 | 516 | ||
| 7824 | 10년 전 | 474 | ||
| 7823 | 10년 전 | 419 | ||
| 7822 | 10년 전 | 393 | ||
| 7821 | 10년 전 | 337 | ||
| 7820 | 10년 전 | 363 | ||
| 7819 |
|
10년 전 | 765 | |
| 7818 | 10년 전 | 415 | ||
| 7817 | 10년 전 | 578 | ||
| 7816 | 10년 전 | 436 | ||
| 7815 | 10년 전 | 630 | ||
| 7814 | 10년 전 | 470 | ||
| 7813 | 10년 전 | 423 | ||
| 7812 | 10년 전 | 435 | ||
| 7811 | 10년 전 | 413 | ||
| 7810 | 10년 전 | 611 | ||
| 7809 | 10년 전 | 542 | ||
| 7808 | 10년 전 | 418 | ||
| 7807 | 10년 전 | 436 | ||
| 7806 |
프로그래머7
|
10년 전 | 1361 | |
| 7805 | 10년 전 | 1300 | ||
| 7804 |
zahir1312
|
10년 전 | 800 | |
| 7803 |
|
10년 전 | 1398 | |
| 7802 | 10년 전 | 492 | ||
| 7801 | 10년 전 | 881 | ||
| 7800 | 10년 전 | 1106 | ||
| 7799 | 10년 전 | 586 | ||
| 7798 | 10년 전 | 536 | ||
| 7797 | 10년 전 | 557 | ||
| 7796 | 10년 전 | 388 | ||
| 7795 | 10년 전 | 539 | ||
| 7794 | 10년 전 | 584 | ||
| 7793 | 10년 전 | 1081 | ||
| 7792 | 10년 전 | 508 | ||
| 7791 | 10년 전 | 594 | ||
| 7790 | 10년 전 | 528 | ||
| 7789 |
fbastore
|
10년 전 | 1478 | |
| 7788 | 10년 전 | 580 | ||
| 7787 | 10년 전 | 437 | ||
| 7786 | 10년 전 | 647 | ||
| 7785 | 10년 전 | 620 | ||
| 7784 | 10년 전 | 678 | ||
| 7783 | 10년 전 | 495 | ||
| 7782 | 10년 전 | 523 | ||
| 7781 | 10년 전 | 929 | ||
| 7780 | 10년 전 | 843 | ||
| 7779 | 10년 전 | 795 | ||
| 7778 | 10년 전 | 382 | ||
| 7777 | 10년 전 | 495 | ||
| 7776 | 10년 전 | 488 | ||
| 7775 | 10년 전 | 429 | ||
| 7774 | 10년 전 | 640 | ||
| 7773 | 10년 전 | 399 | ||
| 7772 | 10년 전 | 768 | ||
| 7771 | 10년 전 | 420 | ||
| 7770 | 10년 전 | 669 | ||
| 7769 | 10년 전 | 426 | ||
| 7768 | 10년 전 | 648 | ||
| 7767 | 10년 전 | 1203 | ||
| 7766 | 10년 전 | 528 | ||
| 7765 | 10년 전 | 582 | ||
| 7764 |
잘살아보자
|
10년 전 | 429 | |
| 7763 |
|
10년 전 | 1491 | |
| 7762 |
Tosea
|
10년 전 | 1085 | |
| 7761 | 10년 전 | 682 | ||
| 7760 |
잘살아보자
|
10년 전 | 731 | |
| 7759 |
잘살아보자
|
10년 전 | 570 | |
| 7758 |
잘살아보자
|
10년 전 | 628 | |
| 7757 | 10년 전 | 1270 | ||
| 7756 |
ITBANK
|
10년 전 | 1282 | |
| 7755 | 10년 전 | 1941 | ||
| 7754 | 10년 전 | 1096 | ||
| 7753 | 10년 전 | 912 | ||
| 7752 | 10년 전 | 1416 | ||
| 7751 |
잘살아보자
|
10년 전 | 569 | |
| 7750 |
잘살아보자
|
10년 전 | 501 | |
| 7749 |
잘살아보자
|
10년 전 | 518 | |
| 7748 |
잘살아보자
|
10년 전 | 541 | |
| 7747 |
잘살아보자
|
10년 전 | 620 | |
| 7746 |
잘살아보자
|
10년 전 | 696 | |
| 7745 |
잘살아보자
|
10년 전 | 940 | |
| 7744 |
잘살아보자
|
10년 전 | 437 | |
| 7743 | 10년 전 | 965 | ||
| 7742 |
starbros
|
10년 전 | 859 | |
| 7741 |
잘살아보자
|
10년 전 | 700 | |
| 7740 |
잘살아보자
|
10년 전 | 587 | |
| 7739 |
잘살아보자
|
10년 전 | 483 | |
| 7738 |
잘살아보자
|
10년 전 | 559 | |
| 7737 |
잘살아보자
|
10년 전 | 539 | |
| 7736 |
잘살아보자
|
10년 전 | 558 | |
| 7735 |
잘살아보자
|
10년 전 | 891 | |
| 7734 |
잘살아보자
|
10년 전 | 446 | |
| 7733 |
잘살아보자
|
10년 전 | 563 | |
| 7732 |
잘살아보자
|
10년 전 | 726 | |
| 7731 |
잘살아보자
|
10년 전 | 645 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기