개인 재정 데이터베이스 보안 취약점 사례 연구

데이터베이스 보안 취약점 사례 연구

차례:

비디오: Sparrow DAST(웹취약점 분석): 8 취약점 확인하기 2024

비디오: Sparrow DAST(웹취약점 분석): 8 취약점 확인하기 2024
Anonim

이 사례 연구에서 SQL Server 보안 전문가 인 Chip Andrews는 클라이언트에게 (윤리적으로) 해킹 된 경험을 공유했습니다. 데이터베이스를 사용하여 보안 결함을 발견합니다. 이 예제는 건전한 데이터베이스 보안을 주장하여 중요한 정보를 보호하기위한주의 사항을 제공합니다.

상황

일반적인 침투 테스트에서 Andrews는 의무적 인 Google 검색, 도메인 이름 연구, 운영 체제 핑거 프린팅 및 포트 스캔을 수행했지만이 특정 웹 사이트는 엄격하게 잠겼습니다. 시스템에서 실행중인 웹 기반 응용 프로그램으로 이동하면서 그는 즉시 SSL 암호화 양식 인증을 사용하는 로그인 페이지에 직면했습니다.

결과

첫째, 툴킷을 조립해야했습니다. 이 침투 테스트 당시, Andrews는 Paros Proxy, Absinthe, Cain & Abel, Data Thief 및 Microsoft SQL Server Management Studio / SQL Server (Express Edition)를 사용하기를 선호했는데 이들 모두는 무료로 사용할 수 있습니다.

사용 가능한 페이지에 대한 사이트를 스파이더링하고 SQL 인젝션에 대한 빠른 취약성 검사를 수행 한 후 App_Name 매개 변수가 응용 프로그램 오류를 나타내는 오류 500 예외를 던지게하는 것으로 확인되었습니다. 침투 테스트는 응용 프로그램 오류가 바람직한 결과 일 때 드문 경우 중 하나입니다.

Microsoft SQL Server 데이터베이스에서 작동하는 일반적인 테스트는 WAITFOR DELAY '00: 00: 10 '과 같은 명령을 주입하여 데이터베이스 서버를 10 초 동안 정지시킵니다. 일반적으로 1 초 이내에 페이지를 반환하는 응용 프로그램에서는 일관된 10 초 지연이 SQL 스트림에 명령을 주입 할 수있는 좋은 지표입니다.

Andrews는 데이터 도우미 도구를 사용하여 로그인 페이지를 공격하려고 시도했습니다.이 도구는 데이터베이스가 OPENROWSET 명령을 사용하여 대상 데이터베이스의 데이터를 인터넷에있는 Mr. Andrews의 데이터베이스로 복사하도록합니다.

이것은 대개 취약한 데이터베이스의 많은 양의 데이터를 효과적으로 소화하는 효과적인 방법이지만,이 경우 그의 공격은 좌절되었습니다! 대상의 데이터베이스 관리자가 Adhoc 분산 쿼리 사용 안 함 옵션을 올바르게 구성하여 OPENROWSET 기능을 사용하지 않도록 설정했습니다.

Andrews는 그의 근면함을 부단히 지키며 다음 도구 인 Absinthe를 계속 사용했습니다. 이 도구는

blind SQL injection

이라는 기술을 사용하여 데이터베이스에 대한 간단한 예 또는 아니오 질문을 사용하여 데이터를 결정합니다. 예를 들어, 도구는 테이블의 첫 번째 문자가 "L"보다 작은 지 여부를 데이터베이스에 요청할 수 있습니다. "

예이면 응용 프로그램에서 아무 작업도 수행하지 않을 수 있지만 그렇지 않은 경우 응용 프로그램에서 예외를 throw 할 수 있습니다. 이 간단한 이진 로직을 사용하면이 기술을 사용하여 전체 데이터베이스 구조와 심지어 내부에 저장된 데이터를 매우 천천히 발견 할 수 있습니다. 이 도구를 사용하여 민감한 고객 정보 테이블을 확인하고 클라이언트에게 수백 가지 레코드를 다운로드했습니다. 마지막으로, 데이터베이스 최악의 마지막 행동을 시도 할 시간이었다. 먼저 Andrews 씨는 Cain & Abel이라는 도구를로드하고 스니핑 모드로 들어가도록 설정했습니다. 그런 다음 Paros Proxy와 이미 확인 된 취약 매개 변수를 사용하여 SQL Server 데이터베이스 사용자가 사용할 수있는 xp_dirtree 확장 저장 프로 시저를 사용하여 범용 명명 규칙 경로를 사용하여 인터넷에 연결된 컴퓨터에 디렉터리를 표시하려고했습니다. 이것은 대상 데이터베이스가 Andrews 씨의 기계에 대해 실제로 자체 인증을 시도하도록 강요했습니다. Cain & Abel이 유선을 듣고 있었기 때문에 노출 된 파일 공유를 인증하는 데 사용 된 챌린지의 해시를 얻었습니다. 이 해시를 Cain & Abel에 내장 된 암호 크래커에 전달하면 Andrews 씨는 취약한 SQL Server가 실행되는 계정의 사용자 이름과 암호를 잠시 후 확인할 수 있습니다.

해킹 된 계정이 웹 애플리케이션의 관리자 계정과 동일한 비밀번호를 사용합니까? 이 암호는 호스트의 로컬 관리자 계정과 동일합니까? 그들은 다른 날에 대한 질문이었습니다. 수집 된 모든 데이터를 수집하고, 고객을 위해 보고서를 준비하고, 다른 날 도구를 버릴 시간이었습니다.

Chip Andrews는 보안 컨설팅 회사 인 Special Ops Security, Inc. 및 SQLSecurity의 공동 창업자입니다. com, SQLPing3 도구를 포함하여 Microsoft SQL Server 보안에 대한 여러 리소스가 있습니다. Andrews는 SQL Server 보안 및 Black Hat 발표자에 대한 여러 도서의 공동 저자로 1999 년부터 SQL Server 및 응용 프로그램 보안을 홍보 해 왔습니다.

데이터베이스 보안 취약점 사례 연구

편집자의 선택

Photoshop Elements 11 - Stone

Photoshop Elements 11 - Stone

을 사용하여 Stone Out을 조각하는 방법 Photoshop Elements 11의 도구를 입력하여 텍스트와 같은 모양의 선택 영역을 만든 다음 이미지 자체를 해당 유형의 채우기로 사용합니다. 예를 들어 꽃 테마 웹 페이지를 만드는 경우 꽃 그림을 텍스트 채우기로 사용할 수 있습니다. 유형 선택을 사용하면 모든 부분을 잘라낼 수 있습니다.

Photoshop Elements 9에서 여러 파일을 일괄 처리하는 방법 - 여러 개의 인형이있는 경우

Photoshop Elements 9에서 여러 파일을 일괄 처리하는 방법 - 여러 개의 인형이있는 경우

여러 파일에 공통적으로 적용 할 편집 기능을 사용하면 Photoshop Elements에서 이러한 변경 사항을 일괄 적으로 처리 할 수 ​​있습니다. 단일 메뉴 명령을 사용하여 파일 형식을 변경하고 파일 속성을 변경하고 공통 파일 기본 이름을 추가 할 수 있습니다. 파일 이름 바꾸기는 내보내기 명령의 일부일 수도 있고 사용할 수도 있습니다.

편집자의 선택

승마 2012 런던 하계 올림픽 - 인형

승마 2012 런던 하계 올림픽 - 인형

승마 (말의 화려한 이름) 경쟁 런던 2012 하계 올림픽은 조련사, 이벤트 및 점프의 세 가지 분야로 구성됩니다. 각 분야는 팀과 개인 메달을위한 기회를 제공합니다. 대회는 7 월 28 일부터 31 일까지 개최됩니다. 조련사 경연 대회는 8 월 2 일부터 9 일까지 개최됩니다. 점프 대회는 ...

동계 올림픽에서의 자유형 스키 - 인형

동계 올림픽에서의 자유형 스키 - 인형

프리 스타일 스키는 동계 올림픽의 X 게임 이벤트 중 하나입니다. . 자유형 스키에서는 경쟁자가 언덕 꼭대기에서 바닥까지 다양한 행사를 수행합니다. 프리 스타일 스키는 기술 스키의 가장 중요한 부분을 차지하며 스노우 보드에서 트릭을 만들어내는 기술과 결합되어 있습니다.

필드 2012 런던 하계 올림픽의 이벤트 - 인형

필드 2012 런던 하계 올림픽의 이벤트 - 인형

스프린트, 릴레이 및 도로 경주 이외에도 2012 런던 하계 올림픽 육상 경기에는 점프 및 던지기 경기가 포함됩니다. 남자와 여자는 높은 점프, 긴 점프, 트리플 점프, 장대 높이뛰기 등의 4 가지 점프 이벤트와 총구, 원반, 창 던지기 및 망치와 같은 네 가지 투구 이벤트에서 경쟁합니다. 필드 이벤트 ...

편집자의 선택

Excel의 유용한 범위 객체 메소드 2016 VBA 프로그래밍 - VBA 메소드가 수행하는

Excel의 유용한 범위 객체 메소드 2016 VBA 프로그래밍 - VBA 메소드가 수행하는

엑셀 2016의 액션. Range 객체는 수십 개의 메소드를 가지고 있지만, 이들 중 대부분은 필요하지 않습니다. 여기서는 가장 일반적으로 사용되는 Range 객체 메소드를 찾습니다. Select 메서드 Select 메서드를 사용하여 셀 범위를 선택합니다. 다음 문은 ...

시나리오 관리자를 사용하여 대출 계산 모델링 방법 - 더미

시나리오 관리자를 사용하여 대출 계산 모델링 방법 - 더미

시나리오 관리자는 목표 탐색 데이터 탭의 가정 분석 섹션에 데이터 테이블이 있습니다. 다른 유용한 도구와 함께 그룹화하면 시나리오 관리자가 중요한 도구임을 믿게 될 것입니다. 그러나 유용한 이름과 좋은 회사가 있음에도 불구하고 ...

더 나은보고 모델을 위해 Power Query와 Power Pivot을 함께 사용 - Power Pivot을 사용하여 더미

더 나은보고 모델을 위해 Power Query와 Power Pivot을 함께 사용 - Power Pivot을 사용하여 더미

Power Query를 함께 사용하면 관리 및 유지 보수가 쉬운보고 모델을 만들 수 있습니다. 보고 모델은보고 메커니즘이 구축되는 기초를 제공합니다. 데이터를 가져오고, 변환하고, 모양을 만들고, 집계하는보고 프로세스를 작성하면 본질적으로보고 모델을 구축하게됩니다. 잘못 작성하는 중 ...