일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 주요통신기반시설 쉘 스크립트
- 주요통신기반시설 shell script
- 케이쉴드주니어
- 취업연계
- 웹해킹 연습
- 블라인드 sql injection
- sql injection
- 리눅스 취약점 진단
- 웹해킹 사이트
- SQLInjection
- sql inection 사이트
- 기업보안담당자
- webhacking.kr 1번 문제
- Los
- 모의해킹
- 국비지원
- 카이섹
- WarGame
- 웹해킹 문제풀기
- 보안컨설턴트
- Blind SQL Injection
- 워드프레스 접속
- 정보보안
- 웹해킹 공부
- Shell Script
- 케이쉴드
- 정보보호관리진단
- 리눅스 취약점 점검
- 보안취업
- 한국정보보호교육센터
- Today
- Total
목록웹해킹 연습 (18)
Youngjin's Log
7번 문제 - orge php 코드 분석preg_match함수로 테이블에 직접적인 접근을 금지하고 있습니다.그리고 or, and를 금지하고 있습니다.pw를 get방식 문자열로 받아서 쿼리문을 입력하고 출력된 id값을 페이지에 표시해줍니다.그리고 addslashes함수를 이용하여 입력받은 pw문자열 중에서 싱글쿼터, 더블쿼터, 널, 역슬래시 앞에 역슬래시(\)를 추가하여 반환해줍니다.그렇게 반환받은 pw문자열을 다시 쿼리문에 입력하고 쿼리가 정상적으로 입력되고 동작했다면 출력된 pw와 addslashes함수로부터 반환 받은 문자열을 비교합니다. 두개의 문자열이 같으면 클리어 되는 문제입니다. TIP문제의 핵심은 addslashes함수입니다. 첫번째 쿼리문을 무력화시켜서 admin을 뽑아 낸다고 하더라도 a..
6번 문제 - darkelf php 코드 분석preg_match함수로 테이블에 직접적인 접근을 금지하고 있습니다.그리고 or, and을 금지하고 있습니다.pw를 get방식의 문자열로 받아서 쿼리문을 입력하고 결과에 admin이 있다면 클리어 되는 문제입니다. TIP비슷한 기본 패턴의 문제 중 하나입니다.다만, or, and를 우회한다는 것이 다를 뿐입니다.or, and를 우회할 수 있는 방법을 찾아 보시면 쉽게 풀 수 있을 것 같습니다.and는 URL 인코딩이 되어진 형태로 입력해주셔야 입력이 가능합니다.or는 우회하는 그대로 입력해 주셔도 됩니다.답은 다양한 형태로 올 수 있습니다.
5번 문제 - wolfman php 코드 분석preg_match함수로 테이블에 직접적인 접근을 금지하고 있습니다.그리고 공백을 넣지 못하게 해놨습니다.pw를 문자열로 받아서 쿼리문을 입력하고 결과에 admin이 있으면 클리어 되는 문제입니다. TIP이번 문제는 공백을 우회하기만 하면 쉽게 풀 수 있는 문제입니다.공백을 우회할 수 있는 방법에는 다양한 방법이 존재하므로 다양한 방법으로 시도해 보시면 좋을 것 같습니다.답은 다양한 형태로 올 수 있습니다.
4번 문제 - orc php 코드 분석preg_match함수로 테이블에 직접적인 접근을 금지하고 있습니다.sql 쿼리문에 id는 admin이라고 명시되어 있으며, pw부분을 get방식으로 입력 받고 있습니다.쿼리문이 정상적으로 DB에서 동작하면 테이블 내에 id(admin이 아닐수도 있습니다.)를 불러오고 id값이 있을 경우 Hello admin을 찍어줍니다.그리고 입력 받았던 pw값을 addslashes함수를 이용하여 싱글쿼터, 더블쿼터, 역슬래시, 널값 앞에 역슬래시(\)을 추가하여 문자열을 반환해 줍니다.(ex. 'admin' -> \'admin\')반환 받은 pw를 다시 쿼리에 넣고 테이블 내에서 admin의 pw를 뽑은 다음, 뽑은 pw와 addslashes에서 반환된 pw을 비교하여 같을 경우..
3번 문제 - goblin php 코드 분석preg_match함수로 테이블에 직접적인 접근을 금지하고 있습니다.그리고, 앞전에 유용하게 쓰이던 쿼터를 금지시켰습니다.id값은 guest로 명시되어있고 no값이 정수형으로 표시되어 있고 get방식으로 값을 입력합니다.불러온 id값이 admin일 경우 클리어 됩니다. TIPno값은 정수형으로 입력받고 있으므로 앞전에서 쿼터를 사용하여 id 또는 pw문자열을 닫아준 것 처럼, 쿼터를 사용하여 값을 무력화 시킬 필요는 없습니다.그렇다면 앞에 명시된 guest의 값은 no의 false로 인해서 무력시킬 수 있고, 새로 조건을 입력해 줄 수 있습니다. 새로운 조건을 입력할 경우에는 쿼터를 사용할 수 없으므로 쿼터를 대신하여 문자열을 넣을 수 있는 방법을 찾아보시면 될..
2번 문제 - cobolt php 코드 분석preg_match 함수로 테이블에 직접적인 접근을 금지하고 있습니다.쿼리문이 DB에 입력되고 테이블의 id 컬럼 중 admin을 가져오면 클리어 되는 문제입니다.만약 id는 불러왔지만, admin이 아닐경우에는 You are not admin이라고 알려 줄겁니다. TIP1번 문제와 같이 기본패턴을 묻는 문제지만, 뒤에 pw부분이 md5으로 해싱한다는 것을 염두에 두고 문제를 푸셔야 할 것 같습니다.id부분을 적극 이용하셔서 뒤에 pw부분을 쿼리문에서 아예 무력화 시켜주시면 될 것 같습니다.답은 다양한 형태로 올 수 있습니다.
1번 문제 - gremlin php 코드 분석preg_match 함수로 직접적인 테이블에 접근을 금지하고 있습니다.쿼리문을 DB에 입력하여서 어떠한 id라도 가져오면 클리어되게끔 되어 있습니다. TIP이번 문제는 sql injection의 기본 패턴을 묻는 문제 입니다.기본패턴인 만큼 확실히 익혀두시면 좋을 것 같습니다.답은 다양한 형태로 올 수 있습니다.