오늘 학습 주제
1. 웹 모의해킹 개론
2. 웹 브라우저
3. 웹 어플리케이션 트랜드
4. SQL Injaction
웹 모의해킹 개론
- 웹서비스 동자 구조 -
사용자(브라우저)가 요청을 하면
방화벽 > 웹 서버 > 웹 어플리케이션 > DB에 요청이 전달
- HTTP Method -
PUT과 Delete는 현재 사용이 거의 없음
점검 시에는 정상적인 파일을 PUT으로 저장하고
Delete로 저장한 파일 삭제
- 세션과 쿠키 -
세션은 변조를 통해 권한 등에 영향을 주기 때문에 보안 코딩 적용
쿠키는 변조가 있어도 큰 영향이 없기 때문에 편의성 위주의 관리
웹 브라우저
- 웹 브라우저 -
브라우저마다 사용하는 엔진이 다르다
- 웹 브라우저 -
브라우저마다 사용하는 엔진이 다르다
웹 어플리케이션 트랜드
- Ajax -
JavaScript와 XML을 이용한 비동기적 정보 교환 기법
- WebSocket -
브라우저와 서버가 양방향 통신을 할 수 있도록 지원
다가올 미래의 기술로 HTML5의 기술 중 하나
취약점 점검 기준
- OWASP -
2004년부터 3년에 1번씩 10대 취약점 발표
웹 보안에 관심 있는 기업 및 개인이 함께 참여하는 프로젝트
- 주요정보통신기반시설 웹 취약점 -
현재 잘 사용하고 있지 않는 취약점도 존재
- 금융보안원 금취분평 -
위험도가 다양한 평가 항목이 존재
취약점이 디테일하다
SQL Injection
- Union SQL Injection -
Union 연산자로 기존의 Select 쿼리에 추가로 쿼리를 삽입하여 데이터를 출력
출력하는 칼럼 수가 동일해야하고
칼럼은 각 순서별로 동일한 데이터형 이어야 사용 가능
- 절차 -
[칼럼 수 확인]
ex. ORDER BY 3 --'
[칼럼 데이터 형 추출]
데이터 타입을 바꿔서 삽입하여 데이터 타입 화인
[데이터 탈취]
FROM ALL_TABLES--을 통해 테이블의 모든 정보 확인
테이블 네임을 확인했으면 해당 테이블의 전체 칼럼명 확인
blueborne
- 대응 -
해당 공격을 자동화하여 공격하는 툴이 존재
SQL Injection 방지 처리(Prepared Statement 사용, 입력값 검증 처리 등)
- Error Based SQL Injection -
의도적으로 발생시킨 에러페이지와 SQL Injection을 결합하여 정보를 탈취
에러 페이지에서 노출되는 정보를 이용
단순 에러 메시지가 아닌 서브쿼리 실행결과가 포함된 에러 메시지를 공격에 사용
- 절차 -
[공격 가능 여부 확인]
UTL_INADDR.GET_HOST_NAME(원하는 쿼리 내용)
CTXSYS.DRITHSX.SN(user, (원하는 쿼리 내용))해당 함수를 포함하여 공격에 사용가능한 함수를 이용
[테이블 개수 확인]
Select Count(Table_name) From ALL_TABLES
(테이블의 목록 개수 확인)
SELECT TABLE_NAME FROM
(SELECT TABLE_NAME, ROWNUM AS RNUM FROM ALL_TABLES)
WHERE RNUM=1
(숫자를 바꿔가며 테이블의 이름 확인
같은 방식으로 테이블 내의 칼럼 확인)
[데이터 탈취]
' AND CTXSYS.DRITHSX.SN(user,(SELECT COLUMN_NAME FROM
(SELECT COLUMN_NAME, ROWNUM AS RNUM FROM ALL_TAB_COLUMNS
WHERE TABLE_NAME='LHSMEMBER3') WHERE RNUM=12))=1--
숫자를 바꿔가며 특정 칼럼의 데이터 출력 확인
- 대응 -
해당 공격을 자동화하여 공격하는 툴이 존재
SQL Injection 방지 처리(Prepared Statement 사용, 입력값 검증 처리 등)
Default 에러 메시지를 사전에 정의된 에러 메시지 창으로 대체
Debugging용 에러 메시지 창은 실 서버용 소스코드에서는 제거
'SK shieldus Rookies 16기' 카테고리의 다른 글
[SK shieldus Rookies 16기] 클라우드 기반 스마트 융합 보안 과정 교육 정리(63일차) (0) | 2024.02.01 |
---|---|
[SK shieldus Rookies 16기] 클라우드 기반 스마트 융합 보안 과정 교육 정리(62일차) (0) | 2024.01.31 |
[SK shieldus Rookies 16기] 클라우드 기반 스마트 융합 보안 과정 교육 정리(60일차) (0) | 2024.01.26 |
[SK shieldus Rookies 16기] 클라우드 기반 스마트 융합 보안 과정 교육 정리(59일차) (0) | 2024.01.25 |
[SK shieldus Rookies 16기] 클라우드 기반 스마트 융합 보안 과정 교육 정리(58일차) (0) | 2024.01.24 |