g5_table의 vi_referer 안전한가요? 채택완료
안녕하세요. 질문드립니다. 질문1. 가.
관리자 페이지에서 접속자집계 데이타가 들어가 있는g5_visit 테이블 이외에도 g5_visit2 역시 기본 테이블인가요? 나. 그리고 g5_visit_old 이라는 테이블 또한 기본 테이블인가요? 다. 혹시 g5_visit에 데이타가 많이 쌓이면, g5_visit를 g5_visit_old 로 rename 하고 속이 텅빈 새로운 g5_visit 생성하도록 코딩이 되어있는지요? 그렇게 코딩이 되어있다면 어느 파일에 있는지요? 질문2. 가. g5_visit 테이블에 데이타가 쌓이는 것은, 접속자의 의사와 관계 없이 싸이트에 접속하면 자동으로 데이타가 형성되는 것으로 이해하고 있는데, 혹시 g5_visit 의 칼럼 vi-referer 에 접속자가 자기가 원하는 임의의 데이타를 넣을 수 있는지요? 만약에 접속자가 자기가 원하는 임의의 데이타를 입력하려면, 어찌하면 되는지요? g5_visit 에 아래와 같은 데이터가 들어와 있습니다. (1823522, '61.162.216.161', '2020-03-21', '07:38:48', 'https://MyWebsite.com/?s=index/\\think\\template\\driver\\file/write&cacheFile=robots1.php&content=xbshell @eval($_POST[admin]);?>', 'Mozilla/4.0 (compatible; MSIE 9.0; Windows NT 6.1)', '', '', '')
나. s=index/\\think\\template\\driver\\file/write&cacheFile=robots1.php&content=xbshell 뜻은 무엇일까요? 다. 또한 접속자가 의도적으로 끼어 넣은 것으로 보이는데, 이렇게 끼어 넣은후 이를 어찌 사용하는지 구체적으로 Step by Step 설명을 해주시면 너무나 감사하겠습니다. 라. /bbs/visit_insert.inc.php 를 열어보면
// $_SERVER 배열변수 값의 변조를 이용한 SQL Injection 공격을 막는 코드입니다. 110810
$remote_addr = escape_trim($_SERVER['REMOTE_ADDR']);
$referer = "";
if (isset($_SERVER['HTTP_REFERER']))
$referer = escape_trim(clean_xss_tags($_SERVER['HTTP_REFERER'])); 이라고 되어있는데, 아래 두줄을 추가하는 것으로 해결이 될까요? if (preg_match('php', $referer))
str_replace('php', 'p*p', $referer); 답변 부탁드립니다.
답변 1개
원본 기준으로 g5_visit2, g5_visit_old 테이블은 없고
가, 나, 다 전부 관련된 부분이 없습니다. 별도로 추가된 것 같습니다.
답변에 대한 댓글 1개
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
질문1.에 대한
답변감사드립니다.
그런데 혹시 시간이 되시면,
질문 2.에 대한 답변도 주실수 있겠는지
부탁드립니다.