piadream

스크립트 해킹 방어 구문 간단 셀프 작성한 것인데... 웬지 쎈 소스

- 직접 작성한  php 해킹해서 php 통째 다운로드?도 할수 있는 북한같은 해킹기술을 방어겸.

- 인위적 스크립트 뚫기 방어 소스.

- 구글 웹 캐쉬. archive.org 그외 사이트 캐쉬 해먹기 방어가 아닐까 싶은

 

$tab= preg_replace("/[^a-zA-Z0-9]*/i", "", $_GET['tab']);
$sql="selct `tab_id` from tab_list where tab_id like '$tab'";
$result=mysqli_query($dbconn,$sql);
$check=mysqli_num_rows($result);
if($check < 1 ) { echo " 존제하지 않는 게시판 입니다."; exit();}
$sql2="selct `status` from check_board where tab_id like '$tab'";
$result2=mysqli_query($dbconn,$sql2);
$info=mysqli_fetch_assoc($result2);
$info=stripslashes($rule['status']);
$info=preg_replace("/[^a-z]*/i", "", $info);
if($info != "pass") { echo "요청에 제한이 걸려져 있습니다";exit();}
 

|

댓글 3개

prepare 안쓰시는 이유가 있나요?
스크립트 인젝션하면 php 검열 무효화 가능합니다.
백엔드 node.js 로 하시는게 좋습니다.
1) preg_replace() 를 사용해도 인젝션이 가능합니다. 악의적인 사용자가 다양한 입력을 시도할 수 있기 때문에, 필요한 입력 검증과 필터링 로직을 추가해야 하구요.

2) LIKE 절을 사용해서 SQL 쿼리를 실행하고 있는데, 위의 소스처럼 $tab 값을 직접 쿼리에 삽입하는 것은 SQL 삽입 공격의 위험을 초래할 수 있습니다. 매개변수화된 쿼리나 prepare를 사용해야합니다.
댓글을 작성하시려면 로그인이 필요합니다. 로그인

개발자팁

개발과 관련된 유용한 정보를 공유하세요. 질문은 QA에서 해주시기 바랍니다.

+
분류 제목 글쓴이 날짜 조회
PHP 2년 전 조회 797
기타 2년 전 조회 1,096
2년 전 조회 603
기타 2년 전 조회 1,571
PHP 2년 전 조회 844
JavaScript 2년 전 조회 1,574
PHP 2년 전 조회 1,236
2년 전 조회 586
기타 2년 전 조회 879
PHP 2년 전 조회 1,005
PHP 2년 전 조회 1,299
기타 2년 전 조회 1,638
PHP 2년 전 조회 1,107
PHP 2년 전 조회 1,292
PHP 2년 전 조회 1,248
JavaScript 2년 전 조회 1,039
MySQL 2년 전 조회 1,237
MySQL 2년 전 조회 1,299
PHP 2년 전 조회 1,572
OS 2년 전 조회 898
웹서버 2년 전 조회 986
웹서버 2년 전 조회 1,091
PHP 2년 전 조회 905
PHP 2년 전 조회 955
PHP 2년 전 조회 964
PHP 2년 전 조회 983
PHP 2년 전 조회 1,036
JavaScript 2년 전 조회 911
PHP 2년 전 조회 1,871
웹서버 2년 전 조회 906
🐛 버그신고