
LOS 포스팅에 앞서 내용이 틀릴 수도 있으며, 해당 부분 지적은 감사히 받겠습니다. 10단계 소스코드이다. 이번엔 쿼리문 pw 뒤에 거짓 논리인 and 1=0 이 추가되었다. id를 admin 값으로 넣고 거짓 논리는 주석처리로 날려주면 해결된다. 주석처리는 (%23, --+-) 은 제대로 먹히지만 (#)는 안 먹혔다. 문제를 다 풀어놓고 주석처리가 잘못되어 문제가 해결되지 않았던 경우가 다수 있었다. 나중에 더 자세히 알아봐야겠다. 쿼리문 입력 이번 문제도 간단하게 해결!

LOS 포스팅에 앞서 내용이 틀릴 수도 있으며, 해당 부분 지적은 감사히 받겠습니다. 9단계 소스코드이다. 이번 문제는 또 모르는 함수가 나와서 검색했다. 1. strolower() // 문자열에서 대문자를 소문자로 치환한다. 2. str_replace(a, b, c) // c에서 a를 b로 치환한다. id값에 adadminmin을 넣는다면 admin 이 제거되면서 admin 만 남을 것이다. 적중 이번문제도 쉽고 짧게 풀려서 허무하다.

LOS 포스팅에 앞서 내용이 틀릴 수도 있으며, 해당 부분 지적은 감사히 받겠습니다. 8단계 소스코드이다. 이번엔 admin , ' 이 필터링되어있다. 그리고 id 값이 admin 이면 문제가 해결된다. 여러 시도 끝에 문제가 굉장히... 간단하게 해결되었다. 단순하게 admin 이 필터링되었으니 한 글자만 대문자로 치환했더니 바로 풀렸다. 문제가 너무 쉽게 풀리면 기분이 좋지 않고 찝찝하다. 추후에 다른 방법을 더 찾아봐야겠다.

LOS 포스팅에 앞서 내용이 틀릴 수도 있으며, 해당 부분 지적은 감사히 받겠습니다. 7단계 소스코드이다. 이번에도 or과 and 연산자가 필터링되어있다. 추가로 이번 문제는 addslashes를 통해 싱글 쿼터와 더블 쿼터가 필터링되어있다. ' , " 우회 문제이다. 필터링 우회를 위해 여러 가지 시도를 해봤는데 or 은 || 연산자로 우회가 되었는데 and는 & 로 우회가 되지 않았다. 그래서 url 인코딩으로 %26을 입력해보았더니 우회가 되었다. 추후에 이유를 찾아봐야겠다... 또한 &와 &&의 정확한 차이점을 찾게 되는 계기가 있었는데, &의 결과 &&의 결과에 차이가 있었다. &는 비트연산자이고 &&는 논리 연산자였다... 이런 점들을 발견할 때마다 기본기의 중요성이 뼈저리게 느껴진다.. 일단..

LOS 포스팅에 앞서 내용이 틀릴 수도 있으며, 해당 부분 지적은 감사히 받겠습니다. 6단계 소스코드이다. 입력받은 pw 값이 필터링되고 있으며 이번엔 or과 and 가 필터링되고 있는 모습이다. 또한 id 값은 guest로 고정되어있다. or과 and 연산자의 우회 문제이다. 1. OR 연산자 우회 - || 2. AND 연산자 우회 - && - URL Encoding: %26%26 ※주의 & 는 다른 개념이다.※ 아주아주 간단하게 해결되었다... 뿌듯

LOS 포스팅에 앞서 내용이 틀릴 수도 있으며, 해당 부분 지적은 감사히 받겠습니다. 5단계 소스코드이다. 여전히 pw는 필터링 중이고 이번엔 공백을 허용하지 않는 듯한 문자열이 보인다. 이번엔 db의 table_name이 prob_wolfman으로 노출된 듯하다. 또한 id 값이 admin 이어야 해결이 되는 것 같다. 일단 guest로 인증 우회에 성공했다. 이제 admin 아이디로 로그인 후 인증 우회를 하면 된다. 하지만 공백 문자열이 필터링되어있는데 이를 우회할 수 있는 방법을 찾아야 한다. 여러 번 시도를 한 후 ( ) -> 공백 (+) ->덧셈기호 등의 문자열이 필터링되어있는 걸 찾을 수 있었다. 이를 우회하기 위해 여러 가지 방법이 있다. 1. Tab // %09 -> 커서를 한 tab만큼..

LOS 포스팅에 앞서 내용이 틀릴 수도 있으며, 해당 부분 지적은 감사히 받겠습니다. 4단계 소스코드이다. pw의 입력값은 필터링되고 있으며 이번엔 id 가 admin으로 값이 설정되어있다. 그리고 입력받은 pw 값은 addslashes 를 통해 ' , " (싱글 쿼터와 더블 쿼터) 앞에 \를 붙여준다. 해결조건은 입력받은 pw 값과 데이터 베이스 내부 pw 값이 같아야 해결이 되는 것 같다. 사실 여기서부터 막혀서 인터넷 검색을 좀 하고 왔더니 blind sql 을 통해 해결하는 방법이 있어 참고한다. db 내부의 pw 값을 찾기 위하여 일단 pw 의 길이를 먼저 찾는 게 중요하다. 그리고 bling sql 을 수행하기 위해 쿼리가 db 내부까지 도달하여 참 , 거짓에 따라 차이점을 나타낼 수 있어야 ..

LOS 포스팅에 앞서 내용이 틀릴 수도 있으며, 해당 부분 지적은 감사히 받겠습니다. 소스코드이다. query 문에 id 가 'guest'로 먼저 들어가 있다. id 가 admin 이 되면 풀리는 것 같다. 하지만 이번엔 id 가 다른 값으로 고정되어 있어 no 값에 따라 문제 해결 여부가 달려있는 것 같다. no 값에 0과 2를 넣었을 때는 아무것도 뜨지 않고, 1을 넣으니 Hello guest 라 뜬다. 10번째 소스코드를 보니 로그인 성공한 계정 앞에 hello 가 붙어서 출력이 된다. (하지만 로그인이라는 개념이 맞는지 잘 모르겠다.) 그리고 그 계정이 admin 이 되어야 문제가 풀리는 것 같다. no 값에 1을 제외한 값을 넣어 쿼리문을 거짓으로 만들어 id 가 guest로 고정되어있는 것을 ..
- Total
- Today
- Yesterday
- 백준 피보나치 수열
- los 15
- spring
- 코딩테스트 준비
- lord of sql
- 기술스택
- 백준
- Los
- samron
- static
- 코딩테스트
- 상속
- 김영한 실전 자바 중급
- 백준 피보나치
- zixem
- 김영한 실전 자바 기초
- 프로그래머스 상품을 구매한 회원 비율 구하기
- 김영한
- 김영한 실전 자바 기본
- 상품을 구매한 회원 비율 구하기 파이썬
- 프로그래머스 상품을 구매한 회원 비율 구하기 파이썬
- ys.k
- 스프링
- samron3
- 프로그래머스
- java
- extends
- 자바
- los 15단계
- webhacking.kr
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |