지난 12월 초에 c0de.breaker는 실수로 카스퍼스키 포르투칼 홈페이지에 방문하여 카스퍼스키를 Unu라는 해커가 해킹한 사실을 떠올리며서 혹시 다른 취약점이 있는가 분석하여 5분만에 SQLi(SQL Injection) 취약점을 찾아 냈다고 합니다.
Warning: pg_exec() [function.pg-exec]: Query failed: ERROR: syntax error at or near "\" at character 306 in /home1/_sites/wwwkasperskycompt/kaspersky/PHP/IfDBRevendedoresKaspersky.phpclass on line 121 ERRO na execucao da query getRevendedors ERROR: syntax error at or near "\" at character 306
웹사이트는 PHP언어로 개발되어 있으며, pg_exec() 함수가 포함되어 있으므로 이는 PostgreSQL 데이터베이스로 구성되었음을 확인할 수 있었다고 합니다.
SQLi 취약점을 알고 있다면 이를 통해 손쉽게 데이터베이스의 이름, 테이블, 필드 등의 정보를 손쉽게 빼낼 수 있습니다. 아래 화면은 URL의 매개변수 부분에 '1=1' 코드를 삽입하여 취약점을 제대로 찾아 냈는지 확인하는 과정입니다.
아래 화면은 매개변수의 값을 검사(Sanitization)하지 않아 데이터베이스 이름과 같은 중요한 정보를 노출하는 화면입니다.
카스퍼스키 포르투칼 홈페이즈는 SQLi 취약점을 통해 데이터베이스 이름과 사용자 이름, 라이선스 테이블 등의 정보를 노출된 것으로 보이며 자세한 사항은 아래 링크를 참고하십시오.
미국 대통령인 버락 오바마의 개인 홈페이지인 barackobama.com이 SQL 인젝션 취약점으로 인해 해킹당한 것으로 알려졌습니다.
Unu라는 이름으로 활동하는 이 해커는 큼직큼직한 사이트의 취약점을 인터넷에 공개한 바가 있으며 가장 최근에는 yahoo.com과 UN 사이트의 취약점을 밝혀낸 바 있습니다. Unu는 블로그에서 barackobama.com 사이트의 해킹한 모습과 대략적인 시스템 상황을 밝혔습니다.
위 화면은은 Pangolin 이라고 부르는 SQL 인젝션 공격 툴 중의 하나로, 공격 지점만 파악하게 되면 가뿐하게 각종 정보뿐만 아니라 데이터베이스까지 훔쳐 볼 수 있습니다.
Unu는 해당 사이트는 MS Access 데이터베이스를 사용하고 있으며, 관리자 계정은 모두 19개이고, 계정의 비밀번호는 암호화되지 않고 텍스트로 저장되어 있다고 밝혔습니다.
SecurityHacks에서, 무료로 제공되는 SQL 인젝션 스캐너 15 제품의 요약 정보와 다운로드를 제공하는 글이 있어 이를 정리해서 올려 드립니다.
아시다시피, SQL Injection 공격은 웹 페이지에서 데이터베이스를 액세스하는 방식을 통해 공격하는 것으로 대부분의 관리자들은 이러한 위협에 대비하여 코딩을 해야 하며, 웹 방화벽 장비나 웹 나이트와 같은 무료 보안 프로그램을 통해 보안을 향상시키는 방향으로 진행되는 것으로 알고 있습니다.
아래의 제품들은 여러분이 운영하는 사이트가 SQL Injection 공격에 대한 취약점이 있는지 자동으로 검사하여 이를 알려 주는 프로그램입니다. 참고로, 아래의 정보는 웹 애플리케이션 개발자 뿐만 아니라 보안 전문가에게도 유익한 프로그램입니다.
1. SQLIer - 취약점이 있는 URL을 검사하고 사용자의 개입없이 SQL Injection 취약점을 익스플로잇하기 위해 필요한 정보를 점검하려고 시도합니다. 다운로드
2. SQLbftools - 블라인드 SQL Injection 공격을 사용하여 MySQL의 정보를 가져오는 시도를 하는 도구의 모음입니다. 다운로드
3. SQL Injection Brute-forcer - SQL Injection 공격 취약점을 찾고 이를 이용하여 공격하는 자동화 도구입니다. 사용자가 작업하는 내용을 볼 수 있으며, 블라인드 SQL 인젝션을 이용합니다. 다운로드
5. SQL Brute - 블라인드 SQL 인젝션 취약점을 사용하여 데이터베이스에서 데이터를 추출해내는 무작위 도구입니다. MS SQL 서버의 시간, 오류 기반으로 익스플로잇을 수행합니다. 오라클의 경우 오류를 기반으로 합니다. 이 프로그램은 Python으로 작성되었으며 멀티 스레드로 동작하며 표준 라이브러리를 사용합니다. 다운로드
5. BobCat - SQL Injection 취약점의 잇점을 이용하는 감사 도구입니다. 사용자가 사용하는 애플리케이션이 액세스하는 테이블에서 데이터를 가져올 수 있습니다. 다운로드