사용자가 $_POST, $_GET 변수외 일반변수를 변조할 수 있나요?
본문
common.php를 보면
$is_member = $is_guest = false;
이런식으로 변수 쓰기전에 다 초기화 시켜놓고 시작하던데
사용자가 $_POST, $_GET 변수 말고 개발자가 만든 일반변수를 변조할 수 있나요?
도움 부탁드립니다
답변 2
post의 경우 <form>태그 안에 input의 값을 크롬의 개발자도구 등으로 변조할 수 있습니다.
get의 경우 주소창에 파라미터가 보이기때문에,
마찬가지로 url의 특정 get변수에 값을 변경하여 변조가 가능합니다.
세션도, 크롬의 개발자도구등에서 스크립트등을 사용하여, 생성도 할 수 있습니다.
사용자가 사이트를 만드는 개발자일 경우
전역변수 ($_GET, $_POST, $_SESSION, ...), 클래스 public 멤버 모두 가능합니다.
이런 경우는 오히려 안되는게 이상하죠.
사용자가 사이트를 이용하는 단순 유저 라면
악의적으로 변조되도록 값을 넘길수 있고
이 경우 ini 설정의 register_globals, url_fopen 같은 항목이 on 으로 되어있는 상태에서 개발자가 제대로 된 검증작업 없이 프로그램을 만들어 놨다면 변조가 됩니다.
답변을 작성하시기 전에 로그인 해주세요.