일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- 로그인
- sql injection point
- CTF
- cookie 탈취
- file upload
- php
- 과제
- lord of sqli
- Cross Site Request Forgery
- XSS
- 세션
- Los
- css
- 모의해킹
- sql injection
- cors
- 웹개발
- 쿠키
- csrf
- MySQL
- JS
- JWT
- union sql injection
- Python
- 로그인페이지
- 게시판 만들기
- Reflected Xss
- blind sql injection
- Error based sql injection
- lord of sql injection
- Today
- Total
목록모의해킹 (86)
Almon Dev

ctf 문제 풀이 SQL Injection 2 풀이1> sql injection 확인우선 주어진 normaltic을 입력해 봅니다. 그 외에 의미 없는 값인 a, b, c와 같은 값을 입력해 봅니다.ID에는 c가 나타났지만 info는 비어있습니다. a' #을 입력해도 ID는 그대로 뜨는 반면 info는 나타나지 않습니다.그렇다면 ID는 유저가 입력한 값을 그대로 나타내고, info는 db에서 가져온다고 생각해도 괜찮을 것 같습니다. a'처럼 sql문이 에러가 뜰만한 문자를 보내면 결괏값이 나오지 않는 것으로 봐서는 sql injection이 가능하다고 생각됩니다. 2> column 개수 확인하기 ( 6개 )a' order by 7#에서는 ID값 역시 나오질 않는 것으로 보아 sql문에 에러가 난 것을 알..

ctf 문제 풀이 SQL Injection 1풀이1> sql injection 확인ma%' and '1' = '1' # 을 실행해서 sql injection이 가능하다는 것을 확인했습니다. 2> column 개수 확인하기ma%' order by 5# 을 했을 때 데이터가 출력되지 않으므로, column의 개수는 4개로 확인됩니다. 3> 출력되는 column의 위치 찾기ma%' union select 1,2,3,4 #을 통해 4개의 column 중 몇 번째가 출력되는지 확인했습니다.4개 모두 출력이 됩니다. 4> db명 알아내기(sqli_1)ma%' union select 1,2,3,database() #으로 db의 이름을 추출합니다. 5> table이름 알아내기 (flag_table, plusFlag_T..
6주 차 강의 SQL Injection사용자가 sql문을 삽입해서 인증을 우회하는 방법DB를 사용하는 곳을 찾아야 함db에서 가져온 데이터가 화면에 출력되는가?데이터가 나오는 경우 : 게시판 => 게시글이나 작성자 등나오지 않는 경우 : 로그인, 중복체크 => 결과만 알 수 있음 데이터 추출 방법웹페이지에 데이터가 출력되는 경우 union을 이용해서 데이터를 출력할 수 있습니다.union : select를 한번 더 사용 가능하게 해주는 sql문법ex) select * from member union select ~~~=> 컬럼수가 같아야 합니다.order by : 특정 컬럼을 기준으로 정렬하는 sql 문법ex) order by [column or index] [desc/asc]=> select의 가장 뒤..

ctf 문제 풀이 Pin Code Crack 풀이1> 1111 보내보기checkOTP.php에 get으로 핀번호를 보내는 것을 확인했습니다. 2> 공격방법 생각해 보기핀번호의 범위가 정해져 있고, 여러 번 시도해도 잠금이 걸리지 않으니 브루트 포스 공격이 적당할 것 같습니다.버프스위트의 intruder를 이용해서 시도해 보겠습니다. 3> burp suite/6/checkOTP.php?otpNum=§1111§의 §사이의 값을 0000부터 9999까지 1씩 증가하면서 요청을 보냅니다.그런데 무료버전의 burp는 매우 느리기 때문에 python을 사용하도록 하겠습니다. 4> python실패했을 때의 응답인 와 비교해서다른 응답이 온다면 반복문을 멈추고 결과를 출력합니다.1021을 입력하면 index.php로..

ctf 문제 풀이 admin is mine 풀이1> doldol / dol1234 로그인해 보기 => loginProc.php에 get메서드로 아이디와 비밀번호를 전달 => 로그인에 성공하면 {result: 'ok'}를 응답하고 index.php로 이동 2> index.php에 접근해 보기자바스크립트로 login.php로 리다이렉트 시키는 것이 보입니다.그리고 그 밑에 html코드가 그대로 노출되네요. 3> js 확인해 보기서버에서는 결괏값으로 {result: "ok/fail"}를 응답하고 있습니다.그렇다면 클라이언트 측에서 로그인에 성공했을 때 리다이렉트를 시켜주는 자바스크립트 코드가 있어야 합니다. 4> 로그인 로직 추측1. 아이디와 비밀번호를 get으로 받아옵니다.2. 서버에서 아이디와 비밀번호를 ..

ctf 문제풀이 Secret Login 풀이1> doldol / dol1234 로그인해 보기로그인 성공 시 302(리다이렉트) 반환 > index.php로 이동 -> 닉네임 표시 2> sql injection 확인아이디와 비밀번호 입력창 모두 sql injection이 가능하고,sql문이 아이디와 비밀번호를 한 번에 검증하는 것으로 추측됩니다.UserId=doldol'#&Password=dol1234 => id 입력이 sql injection이 가능한지 확인UserId=doldol'#&Password=dol1234'# => 비밀번호 입력 sqli 가능 확인UserId=doldol'#&Password=testdol1234 => sql에서 비밀번호를 함께 검사하는지 확인아이디 입력창에서 #으로 주석처리를 했..

ctf 문제풀이 Login Bypass 4 풀이1> doldol / dol1234로 로그인해 봅니다.post요청으로 아이디, 비밀번호를 보낸 뒤, 로그인에 성공하면 302 리다이렉트 결과를 응답합니다. 2> sql injection 확인지난번 문제와 마찬가지로 아이디 입력은 sql injection이 존재하고, 비밀번호 입력은 존재하지 않습니다.UserId=doldol'+and+'1'%3d'1 >> doldol' and '1'='1 3> sql에서 가져오는 컬럼 개수 확인하기 (order by 사용)UserId=doldol'+order+by+2+desc# 를 통해 받아오는 컬럼의 개수가 2개인 것을 확인 4> 로그인 코드 예상해 보기db에서 비밀번호와 닉네임을 받아와서 인증절차를 따로 거치는 코드로 예상..

ctf 문제풀이 Login Bypass 3 풀이1> doldol / dol1234로 로그인해봅니다. 2> 리피터를 통해서 sql injection 확인해 보기id는 sql injection이 가능하고, password는 불가능합니다. 3> sql injection을 통해 가져오는 컬럼 개수 확인해보기 (컬럼은 2개)ex) UserId=doldol' order by 2 desc# 4> 로그인 코드 예상해 보기$sql = "select password,nickname from member where id='$input_id'";if( $input_pass == $db_pass ) { // 로그인} 5> normaltic3로 로그인해보기 (union 사용)UserId=doldol'+union+select+'..