간단한 중요 DB정보 보호방법
인터넷정보2007. 10. 10. 14:17
function get_user_info($id){
$sql = "SELECT * FROM members id=BINARY('{$id}')";
$result = mysql_query($sql);
$row = mysql_fetch_array($result);
return $row
}
처럼 SQL이 있습니다.
이렇게하면 비밀번호도 나오겠죠.
실수해서
$row = get_user_info($_GET['id'])
print_r($row);
print($row['pass']);
해버렸고, 그 사이트를 오픈했다면...
난감하죠... 난감합니다.
이런 일을 예방하기 위해서
function get_user_info($id){
$sql = "SELECT *,REPEAT('*',LENGTH(pass)) AS pass
FROM members id=BINARY('{$id}')";
$result = mysql_query($sql);
$row = mysql_fetch_array($result,MYSQL_ASSOC);
return $row
}
라고 해줍니다.
---------=-------------------------
pass는 pass의 길이만큼 * 로 바뀝니다.
즉, 비밀번호는 출력이 안되는거죠.(출력은 되지만, fetch_array 할 때 값이 덥어씌워져 버립니다.)
-------=---------------------------
이건 MYSQL_ASSOC 이걸 꼭 써야하죠. 안 그러면 숫자로 접근할 수 있으니깐.
--------=--------------------------
그냥 간단한 중요 DB정보 보호방법이었습니다.
$sql = "SELECT * FROM members id=BINARY('{$id}')";
$result = mysql_query($sql);
$row = mysql_fetch_array($result);
return $row
}
처럼 SQL이 있습니다.
이렇게하면 비밀번호도 나오겠죠.
실수해서
$row = get_user_info($_GET['id'])
print_r($row);
print($row['pass']);
해버렸고, 그 사이트를 오픈했다면...
난감하죠... 난감합니다.
이런 일을 예방하기 위해서
function get_user_info($id){
$sql = "SELECT *,REPEAT('*',LENGTH(pass)) AS pass
FROM members id=BINARY('{$id}')";
$result = mysql_query($sql);
$row = mysql_fetch_array($result,MYSQL_ASSOC);
return $row
}
라고 해줍니다.
---------=-------------------------
pass는 pass의 길이만큼 * 로 바뀝니다.
즉, 비밀번호는 출력이 안되는거죠.(출력은 되지만, fetch_array 할 때 값이 덥어씌워져 버립니다.)
-------=---------------------------
이건 MYSQL_ASSOC 이걸 꼭 써야하죠. 안 그러면 숫자로 접근할 수 있으니깐.
--------=--------------------------
그냥 간단한 중요 DB정보 보호방법이었습니다.
'인터넷정보' 카테고리의 다른 글
입력 글자바이트 제한 textarea,textbox용 (0) | 2007.10.11 |
---|---|
mysql 기본명령어 (0) | 2007.10.11 |
윈도우용 주요 프로세스 목록이 있는 사이트 (0) | 2007.10.11 |
현재 페이지 쿠키 알아내기 (0) | 2007.10.10 |
바이러스 백신 소프트웨어 공급업체 목록 (0) | 2007.10.10 |
SSL관련 개인키, CSR 만드는 방법 (0) | 2007.10.10 |
IE flash 패치용 - 이올라스, 플래시 테두리 (0) | 2007.10.10 |
file에 스킨 입히기 - 첨부파일 (0) | 2007.10.10 |
회색 컬러, 그레이 색상 (0) | 2007.10.10 |
이미지 자동 리사이즈 관련 함수 (0) | 2007.10.10 |