
LOS 포스팅에 앞서 내용이 틀릴 수도 있으며, 해당 부분 지적은 감사히 받겠습니다. 40단계 소스코드이다. id=admin으로 고정되어있고 pw파라미터를 입력받아 일치하면 풀리는 문제인 줄 알고 풀었었다. 역시 아니었고 poltergeistFlag === pw 구문을 보고 이상한 점을 느꼈다. 일단 mysql에서 했던 것처럼 blind sql을 위해 참 거짓 출력이 다른 점을 찾았었고 admin에 해당하는 pw값을 찾아 파라미터로 주입했지만 문제는 풀리지 않았다. 어차피 정답이 아닌 부분이라 자세하게 포스팅하지 않겠다. 문제의 해결조건은 pw로 입력받은 값이 poltergeistFlag의 값과 같으면 해결된다. 따라서 admin의 pw값은 애초에 필요하지도 않았다.. 소스코드를 보면 주석처리된 부분에 ..

LOS 포스팅에 앞서 내용이 틀릴 수도 있으며, 해당 부분 지적은 감사히 받겠습니다. 36단계 소스코드이다. 파라미터로 id, pw를 받고 id와 pw가 각 first, second면 풀린다. 또한 소스코드에 주석처리로 반드시 union select를 사용해야 한다고 힌트를 줬다. 바로 해보자 쿼리가 실패했다. 방화벽에 무언가가 걸린 듯한데 어떤 부분인지 수동으로 찾는다. 일단 공백우회는 아니지만 union과 select가 순서대로 오면 오류를 발생시킨다. 일단 여러시도끝에 문제는 해결시켰다. 하지만 다른 문제가 생겼다. 일단 문제 해결 화면이다 ?id=\&pw=union/***/select 'first','second'--+- 공백을 /***/ 처리로 해줬는데 /**/ 주석 사이에 *가 아닌 다른 문자..

LOS 포스팅에 앞서 내용이 틀릴 수도 있으며, 해당 부분 지적은 감사히 받겠습니다. 35단계 소스코드이다. 이번은 id와 pw를 파라미터로 받고 그 값이 table에 있으면 hello admin을 출력해 주는 것 같다. 그리고 pw는 addslashes로 필터링 하여 prob_godzilla에 id를 admin으로 고정하고 pw를 넣어주어 일치하면 해결되는 것 같다. 음 일단 pw가 addslashes로 (', ") 이 필터링되기에 id파라미터에 쿼리를 주입해야겠다 생각 들었다. hello admin으로 인증 우회가 된 모습을 볼 수 있다. 이제 pw를 알아내면 된다. 먼저 pw의 길이는 8자리이다. 이를 토대로 인젝터를 작성하고 실행시킨다. a18a6cc5가 나왔다. 해결 시행착오 1. 최근 문제들은..

LOS 포스팅에 앞서 내용이 틀릴 수도 있으며, 해당 부분 지적은 감사히 받겠습니다. 34단계 소스코드이다. 파라미터로 id와 pw를 받고 pw는 md5() 함수로 감싸 져 있다. 그리고 필터링은 그냥 필요 이상의 해킹 시도와 대소문자 구분 없이 admin만을 하고 있다. 그래서 이번에도 그냥 33단계처럼 싱글 쿼터 우회로 \와 hex변환으로 쿼리를 만들어서 삽입하니 바로 해결되었다. 또한 md5() 함수의 뒷부분은 그냥 주석처리로 날려준다. ?id=\&pw=||id=0x61646d696e--+- 문제 해결 시행착오 1. 이번 역시 주석처리가 아닌 ('로는 문제가 해결되지 않는다.

LOS 포스팅에 앞서 내용이 틀릴 수도 있으며, 해당 부분 지적은 감사히 받겠습니다. 33단계 소스코드이다. 이번엔 modsec.rubiya.kr 서버가 ModSecurity Core Rule Set v3.1.0 with paranoia level 1 버전으로 돌아가고 있다고 쓰여있다. 그리고 waf를 우회할 수 있는가?라고 물어본다. 또한 id와 pw 항목에서 admin을 대소문자 구분 없이 필터링하고 있다. 아마 이번 문제는 웹 방화벽 해당 버전을 우회하여 admin으로 로그인하면 문제가 해결될 것 같다. 바로 시도하자. 일단 id와 pw를 파라미터로 받으니 \로 싱글 쿼터를 우회하며, hex변환으로 admin을 0x61646d696e로 우회하여 쿼리를 주입해본다. ? id=\&pw=||id=0x61..

LOS 포스팅에 앞서 내용이 틀릴 수도 있으며, 해당 부분 지적은 감사히 받겠습니다. 32단계 소스코드이다. 쿼리가 두 개 있고 파라미터는 no를 받으며 admin, and, or, if, coalesce, case, _, prob, time 등이 대소문자 구분 없이 필터링되어있다. 또한 query2는 query1과 달리 no에 싱글 쿼터 처리가 되어있다. 문제를 해결하기 위해 4개의 조건을 만족해야 한다. 각 조건은 1. query1 = admin 2. query1 != admin 3. query2 != admin 4. query2 = admin 이다. 처음엔 이게 무슨 말인지 몰라서 조금 시도하다 인터넷 검색을 했다. 1,3 2,4 조건이 같이 실행된다. (추측) 정답은 시간에 따라 id의 값을 바꿔..
- Total
- Today
- Yesterday
- 상속
- 백준 피보나치 수열
- webhacking.kr
- los 15
- 기술스택
- zixem
- 코딩테스트 준비
- 스프링
- samron
- lord of sql
- 프로그래머스 상품을 구매한 회원 비율 구하기
- ys.k
- 김영한 실전 자바 기초
- static
- 김영한 실전 자바 기본
- 김영한
- Los
- spring
- 백준
- 코딩테스트
- 프로그래머스 상품을 구매한 회원 비율 구하기 파이썬
- 백준 피보나치
- 상품을 구매한 회원 비율 구하기 파이썬
- extends
- 자바
- 프로그래머스
- los 15단계
- java
- 김영한 실전 자바 중급
- samron3
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |