본문 바로가기

반드시 알아아 할 PHP 보안 30 가지

반응형

php.ini 에서 register_globals=off 하시면 , 일단 보안이 되구요.
세션을 사용시 $_SESSION 이나 $HTTP_SESSION_VARS[] 형태로 사용하여야 합니다.

왼쪽에 PHP4.1.1 아래 관련 게시물 주욱 보시면 됩니당

글구 회원 비번은 md5() 로 암호화 하시구요. 쿠키는 사용하지 마세요.
회원이 비번을 잊어 버렸을 경우는 회원 email 주소로 새로운 비번을 쏴주시구요.

세션의 경우 회원id 세션과 회원 비번 md5 암호화 한 세션 , 2개 로 비교 하세요.
회원 레벨..준회원..정회원..관리자 등이 있을 경우는 3개 로 비교 하시구요.
1개 로만 절대로 비교 하시지 말구요 !

회원 정보 수정 시 form 에서 맨아래 무조건 회원 비번을 1번더 묻게 하시구요. ^^

register_globals=off  하셨나요?
$_SESSION 은 PHP4.1.0 이상 입니다.

세션의 경우는 /tmp 폴더에 저장 하시지 마세요. php.ini 에서 세션저장 장소를 바꾸세요.
session지시자 아래 있슴다.
/tmp 는 너무 알려 져서 좋지 않습니다. !

register_globals=off 를 하지 않더라도..여러가지로 보안을 취할 수 있습니다.
$REQUEST_METHOD 를 체크 하는 방법 하구요.
$HTTP_REFERER 를 체크 하는 방법 하구요.
PHP강좌 게시판에서 http 나 request 로 검색 하시구요. 왼쪽에 PHP 보안 메뉴 아래 쪽에 보세용 ^^

세션 생성시 $userid 를 생성 하고, $userpass=md5($userpass); 로 생성 해서,
2개 값이 있는지 비교 하구요.. isset() 등으로 비교 하시는 것이 좋구요.

$userpass 값은 32 자 인지 확인 하시면 됩니다. md5() 로 해슁 하면 32자가 됩니당.

if((session_is_registered(username)) && (session_is_registered(user_id)))
session_is_registered() 를 사용하시구요..

$pw 도 암호화 하세용..!!!
비교는

if($pw==md5($pw넘어온값) && isset($pw넘어온값))
이런식으로 체크 하시구용...^^

좀더 고심해 보시고 응용해보세요 ^^


$tpass=md5("pw008");
if(($id == "id007") && (md5($pw) == $tpass) && isset($pw) && isset($id)){

이런 식으로 ^^

반응형

댓글


Copyright ⓒ SmartWeb All rights reserved.