> 22.12 페이팔 크리덴셜 스터핑 사고 이후 국내 한국장학재단, 워크넷 등에서 관련 사고가 발생
- 이미 다른 곳에서 탈취한 크리덴셜를 이용해 여러 웹 사이트나 앱에 접근을 시도(Stuffing, 대입)하여 개인정보나 자료를 탈취
> 크리덴셜이란 사용자가 본인을 증명하는 수단으로, 대부분의 사용자들이 여러 사이트에 같은 크리덴셜(패스워드)을 사용하고 있기 때문에 발생
> 가능한 모든 계정정보를 대입하는Brute-Force 공격과 차이를 보임
2. 실습
2.1 DVWA Brute-Force: Level Low
- user/user 계정으로 로그인을 시도한 결과 "Username and/or password incorrect" 에러가 출력되며 로그인 실패
- 로그인 방식은 GET 메소드를 사용하며, 사용자로부터 username과 password 변수를 입력받음
- THC Hydra를 이용하여 공격을 자동화하여 실습을 진행
THC Hydra - "The Hacker's Choice"(THC)라는 단체에서 개발하여 배포하는 명령행 기반의 모의침투(pentest) 도구 - SSH, TELENT, HTTP, HTTPS, FTP, LDAP, SMB, SNMP, POP3 등 다수의 통신규약에 대해 사전기반 비밀번호 공격도구 - 웹취약점분석에서는 관리자나 사용자 계정을 취약하게 관리하는 지의 여부를 점검할 수 있음
- 먼저 DVWA IP는 192.168.56.109이며, 로그인은 GET 방식으로 이루어짐
hydra 192.168.56.109 http-form-get
- 로그인 페이지는 /vulnerabilities/brute/, 사용자가 입력한 정보는 username=admin&password=user&Login=Login로 전달
- 로그인 실패 시 Username and/or password incorrect. 문자열이 출력
- Impossible 레벨의 PHP 소스코드를 확인해보면 3회이상 계정 오입력 시 15분동안 계정을 잠금 처리
- 공격자는 15분동안 대기해야 하므로 반복적 대입 공격이 거의 불가능함
- 하지만, 정상적인 사용자 또한 15분을 대기하여야 하므로 적절한 시간 설정이 필요
// Default values
$total_failed_login = 3;
$lockout_time = 15;
$account_locked = false;
[생략]
if( ( $data->rowCount() == 1 ) && ( $row[ 'failed_login' ] >= $total_failed_login ) ) {
// User locked out. Note, using this method would allow for user enumeration!
//echo "<pre><br />This account has been locked due to too many incorrect logins.</pre>";
// Calculate when the user would be allowed to login again
$last_login = $row[ 'last_login' ];
$last_login = strtotime( $last_login );
$timeout = strtotime( "{$last_login} +{$lockout_time} minutes" );
$timenow = strtotime( "now" );
// Check to see if enough time has passed, if it hasn't locked the account
if( $timenow > $timeout )
$account_locked = true;
}
- 노턴 라이프락(Norton LifeLock) 고객들 중 일부가 크리덴셜 스터핑 공격의 피해 ※ 크리덴셜 스터핑 : 입수한 비밀번호를 사용해 다양한 서비스의 계정으로 로그인 시도를 해 보는 공격 - 다른 곳에서 유출된 사용자 이름과 비밀번호의 조합 정보를 노턴 라이프락 고객들에게 대입하여 노턴 계정에 침투하는 데 성공 - 비밀번호 관리 프로그램에 접속했을 가능성도 존재
내용
- 젠 디지털 측은 침해와 관련된 악성 행위를 12월 12일에 처음 발견 ※ 젠 디지털(Gen Digital) : 라이프락이라는 브랜드를 소유하고 있는 기업
- 인증 시스템에서 “비정상적으로 로그인 시도 및 실패 빈도가 높다” 경보 > 열흘 간 수사 > 최초 악성 행위는 12/01 - 아직 피해 규모에 대해서는 알려진 바가 없다 > 공격자들이 노턴 계정과 연결되어 있는 사용자 이름, 전화번호, 우편 주소에 접속한 것으로 추측
- 이번 사건으로 비밀번호 재사용 습관의 문제점을 보여줌 > 아무리 강력한 비밀번호 생성 및 관리 기술이라도 무용지물이 될 수 있음 > 각종 서비스에 동일한 크리덴셜(ID/PW)을 사용
기타
- 사용자들 중 노턴 계정을 비밀번호 관리 프로그램으로 보호하지 않고 자기가 스스로 만든 비밀번호로 보호하고 있던 사람들이 공격에 당한 것으로 추정
- 공격자들은 최근 아이덴티티와 접근 관리 시스템을 자주 표적으로 삼기 시작 > 아이덴티티 접근 관리 시스템(IAM)을 한 번만 침해하면 연결된 수많은 보물 창고들로 접근할 수 있기 때문 > 표적의 네트워크 내에도 더 깊숙하게 들어갈 수 있게 됨 ∴ 효율성을 지극히 따지는 공격자들에게 안성맞춤인 표적