분류 전체보기
-
|Lord of SQL_injection| #6 DarkelfWargame Site/SQL injection 2019. 2. 8. 15:02
두 번째 줄로 내려오니 뭔가 기분이 좋다 ㅎㅎ 다크엘프 고고씽 6단계 문제 darkelf 이다. or 랑 and 를 막고 있는 것으로 보아 앞의 문제 wolfman 의 공백 우회와 같은 느낌으로 해결하면 될 것 같다는 느낌이 든다. or 하나만 우회하면 간단히 해결할 수 있다. 인터넷 검색으로 or 는 파이프라인 두개 || (%7c%7c) 로 우회가 가능하다는 것을 알아냈다.그렇다면 바로 TEST!! 짜잔!! and 는 앰퍼샌드 두 개 && (%26%26) 로 우회가 가능하다는 것을 알게되었다.언젠가 and 를 우회하게 될 때 써먹어야겠다. 원래 두 문제만 풀고 끝내려했으나, 한 문제만 더 풀어봐야겠다. 고고씽~
-
|Lord of SQL_injection| #5 WolfmanWargame Site/SQL injection 2019. 2. 8. 14:48
오늘은 두 문제 정도만 풀어볼까아 ~ 첫줄의 마지막 문제이다 ~~ 5단계 문제 wolfman 이다. No whitespace 라는 문구를 봐도 알 수 있는 것처럼, 공백을 막고 있다. 최종적으로 id 에 admin 이 들어가면 문제는 해결된다. 대표적으로 공백을 우회하는 방법으로는 %0a (줄바꿈), %09 (tab) 가 있고, 그 외에도 %0b, %0c, %0d, /**/ 등이 있다. 공백 우회만 해결된다면 정말 쉬운 문제가 될 것이다. 짜잔!! ?pw='or%0aid='admin?pw='or%0bid='admin?pw='or%09id='admin?pw='or%0did='admin?pw='or/**/id='admin?pw='or(id='admin')%23 한 문제 한 문제마다 테마가 있어서 공부하기 좋..
-
|Lord of SQL_injection| #4 OrcWargame Site/SQL injection 2019. 2. 7. 18:57
네번째 친구를 만나보자 ~~ 4단계 문제 orc 이다. 차근차근 해석해보니까 admin 의 패스워드를 맞춰야만 해결할 수 있을 것 같다. 우선 쿼리문을 다음과 같이 참으로 만들어 보자. select id from pob_orc where id = 'admin' and pw='' or '1' 다음과 같은 쿼리문이 있을 때 조건문에서 연산자의 우선순위는 or 보다 and 가 높다.따라서, 아이디가 admin 이고 패스워드가 '' 이거나 '1'(항상참)로 해석하면된다.나중에 and, or 가 뒤죽박죽 되어있는 문제가 나왔을 때 당황하지 말도록하자~ 다음의 화면처럼 query 문의 내용이 참일 경우 'Hello admin' 이 출력된다. 사용자가 입력한 내용에 따라 출력되는 화면이 바뀐다면 이는 Blind In..
-
|Lord of SQL_injection| #3 GoblinWargame Site/SQL injection 2019. 2. 7. 00:48
오늘은 이 놈 까지만 처치하고 집에가서 드라마 봐야겠다 ㅎㅎ 3단계 문제 goblin 이다. 이제 슬슬 사용할 수 없는 글자가 추가되는 듯하다. ', ", ` 가 막혀있는 상태에서 'admin' 문자열을 입력할 수 있느냐에 대한 문제이다. 싱글 쿼터를 사용하지 않고 문자열로 인식하게 만들어주기 위해서는 16진수를 이용하면 된다. 이러한 우회방법은 자주 쓰인다고 들었다. 바로 구글로 달려가서 ASCII 코드 표를 찾아서 문제를 해결했다. 짜잔!! 다른 풀이방법로는 char 를 이용하는 방법이 있다. 유사 답으로는 다음 두 가지도 있다. ?no=0 or id=char(97,100,109,105,110)?no=0 union select 0x61646d696e 조금씩 제약조건들이 생기고 있다. 하지만, 가벼운 ..
-
비대칭 암호의 개념 및 목적보안 용어 정리 2019. 2. 7. 00:22
비대칭 암호 암호화 방식은 크게 양방향 암호화 알고리즘과 단방향 암호화 알고리즘으로 나눌 수 있다. 양방향 암호화 알고리즘은 복호화가 가능한 알고리즘이고, 단방향 암호화 알고리즘은 암호화는 가능하지만 복호화가 불가능한 알고리즘이다. 양방향 암호화 알고리즘 중에서 비대칭키 알고리즘에 대해서 알아보자. 1) 비대칭 암호의 개념 양방향 암호화 알고리즘에 해당하기 때문에, 암호화키와 복호화키가 존재한다. 비대칭이라는 단어에서도 알 수 있듯, 비대칭키 암호화 알고리즘은 이러한 암호화키와 복호화키가 같지 않다는 특징을 가지고 있다. 두 개의 키를 공개키, 개인키라고 부른다. 공개 키는 누구나 알 수 있는 공개가 가능한 키를 말하고, 개인키는 키의 개인만 소유하고 있는 키를 뜻한다. 개인키는 외부에 노출돼서는 안 되..
-
|Lord of SQL_injection| #2 CoboltWargame Site/SQL injection 2019. 2. 6. 23:09
횟집 서빙 알바를 마치고 다시 카페에 와서 문제를 풀어본다.. 그래도 옆에 있는 파닥몬 보다는 귀여운 여우가 있다. 2단계 문제 cobolt 이다. 이번에는 id 가 admin 이 되도록 해주어야한다. 아마도 데이터 베이스에는 pw 가 md5 형식으로 암호화되어 있는 것 같다. 1단계에서 본것처럼 pw 부분을 주석처리를 통해 애초부터 무시해버리면 정말 쉬운 문제가 된다. 짜잔!! 물론 1단계에서 추가로 붙혔던 답들 또한 응용하면 답이 될 수 있다.union 을 활용한 답안이다. pw 파라미터를 응용한 답안이다. 하지만, 이 또한 Simple is Best 이다. admin'%23 으로 가볍게 Pass~!!
-
|Lord of SQL_injection| #1 GremlinWargame Site/SQL injection 2019. 2. 6. 17:35
Web 보안을 공부하다가 SQL injection 에 대해 관심이 생겨 워게임 사이트를 찾아다니다가 해킹스터디 내에서 '초급부터 차근차근 실력을 쌓을 수 있는 좋은 사이트'라는 평을 받고 있던 Los.rubiya.kr 를 시작해보기로 했다. 저기저.. 여자 드라큘라 때문에 놀랐다... 자 본격적으로 출발 해볼까아~ 1단계 문제 gremlin 이다. GET 방식이므로 URL 로 파라미터를 조작하면 되는 것 같다. 차근차근 분석해보면 login_chk( ) 를 통해 로그인 상태를 확인하고 dbconnect( ) 로 DB 와 연결하는 코드가 보인다. 그 뒤에는 사이트의 데이터 베이스에 악의적인 공격을 막는 듯한 코드가 보인다. ( 나중에 preg_match 목록에 자주 보이는 것들을 모아서 따로 올려봐야겠다...