설명
rand, mt_rand, uniqid, str_shuffle는 보안 토큰이나 인증 코드 생성에 충분하지 않습니다.
잠재적 영향
토큰 예측, 인증 우회, 세션 탈취가 가능합니다.
해결 방법
보안 목적의 난수는 random_bytes 또는 random_int를 사용합니다.
예시
변경 전
php
<?php
$token = uniqid();
변경 후
php
<?php
$token = bin2hex(random_bytes(32));
설명:
- 변경 전: 보안에 민감한 값에 예측 가능한 난수 API가 사용됩니다.
- 변경 후: 보안 목적의 난수는
random_bytes또는random_int를 사용합니다.