Write up (Wargame)/LOS

Write up (Wargame)/LOS

[Lord Of SQL Injection] 9. vampire 풀이

분석 따옴표를 막아두었고 id만 입력받습니다. 못보던 strtolower이 있네요. 이름에서 느껴지듯이 문자열에서 대문자를 소문자로 변경하는 함수라고 합니다. id가 admin이면 문제를 풀고 str_replace 함수를 사용해서 문자열에 admin이 있으면 공백으로 변경합니다. str_replace(str1, str2, str3) str3에 있는 str1을 str2로 변경. 이건 스터디에서 배웠어서 그냥 adadminmin을 넣으면 가운데 admin이 공백이 되어서 admin만 남을 것 같습니다. 풀이 어드어드 민민

Write up (Wargame)/LOS

[Lord Of SQL Injection] 8. troll 풀이

음.. 문제 풀다가 든 생각인데 요즘 라업 찍어내는 기계가 된 기분..? 분석 이번에는 조금 짧네요..? id를 받고 admin이면 preg_match로 날려버립니다. 아 그리고 작은 따옴표도 입력할 수가 없네요. 그냥 preg_match를 우회하는 문제같은데 어 보니까 i 옵션이 없네요. i 옵션은 대소문자를 구분하지 않는다는건데 그러면 ADMIN은 통과가 됩니다. sql 내부에서는..? 대소문자를 구분하지 않는다고 들었는데 그러면 우회가 되려나 풀이 되네요

Write up (Wargame)/LOS

[Lord Of SQL Injection] 7. orge 풀이

분석 orge문제도 pw만을 전달받고 or과 and를 사용할 수 없습니다. 처음 쿼리를 통해서 참 거짓을 알려주고 다음에 addslashes를 거치고 result의 pw와 입력된 pw가 같아야 문제를 풀 수 있습니다. 이번에도 브루트포싱이겠군요. or, and를 사용하지 못하니까 || &&를 사용해서 풀면 될 것 같습니다. 풀이 id가 guest면서 pw가 공란인건 존재하지 않습니다. 그럼 이제 or을 가지고 제가 원하는 걸 찾아봅시당 이건 코드짜기 귀찮아서 그냥 손으로 대입했는데 admin의 pw 길이가 8입니다. import requests url = "https://los.rubiya.kr/chall/orge_bad2f25db233a7542be75844e314e9f3.php?" cookie = {'..

Write up (Wargame)/LOS

[Lord Of SQL Injection] 6. darkelf 풀이

분석 이 문제도 pw만을 받습니다. 그리고 pw에 preg_match로 or과 and가 막혀있네요 지난 문제랑 똑같이 풀면 되는거 같은데..? ㅋㅋㅋㅋ... 풀이 ㅇ ㅔ.. 풀었습니다.

Write up (Wargame)/LOS

[Lord Of SQL Injection] 5. wolfman 풀이

분석 이번에도 pw만 전달받고 스페이스바를 사용할 수 없도록 preg_match가 되어있습니다. 요로코롬 pw=%20만 해줘도 No whitespace가 뜹니다. 그러면 or 대신 || 쓰면 되는거 아닌가? 풀이 guest이고 pw가 ''이거나 id가 admin이도록 조건을 넣어줬는데 바로 클리어~

Write up (Wargame)/LOS

[Lord Of SQL Injection] 4. orc 풀이

분석 이번 문제에서는 admin을 id로 주고 pw만을 get으로 받습니다. 그리고 보호기법으로 addslashes를 사용하네요. addslashes는 쿼리문에서 오류가 발생할만한 백슬래시(\), 작은 따옴표('), 큰따옴표(") 등을 \를 앞에 붙여 escape시키는 함수입니다. db에서 꺼내왔을 때는 백슬래시를 제거해서 원래의 문자열이 되도록 하는 stripslashes라는 함수도 있습니다. php에서는 magic_quotes_gpc라고 해서 이 작업을 자동으로 해주는 경우도 있다네요. 그래서 addslash가 되기 이전에 그냥 쿼리를 참으로 우회하면 hello admin만 나옵니다. 이후에 addslashes하여 쿼리를 다시 보내서 쿼리의 결과로 받아온 pw가 존재하고, 결과의 pw와 입력한(add..

Write up (Wargame)/LOS

[Lord Of SQL Injection] 3. goblin 풀이

분석 php를 분석해보면 id가 admin이어야 하고 no에는 '이나 " ` 등을 사용하지 못하도록.. 되어있네요 no에서 따옴표를 넣어서 하는 공격을 막아두는 것 같습니다. 음.. 그리고 id가 guest로 고정되어있고 입력받는 부분은 no밖에 없습니다. no 만을 이용해서 id를 admin이 되도록 해야하는데.. 따옴표를 우회할 방법이 있지 않을까 싶습니다. 스터디에서 preg_match를 우회하는 방법으로 char, hex를 이용해서 우회한다고 했는데.. 일단 숫자를 넣어보니 1번 넘버로 로그인이 되네요. 2번부터는 안 됩니다. 혹시 몰라 %27 (')도 넣어봤는데 안 되네요. or 문으로 id가 admin임을 넣어주면 될텐데.. 풀이 ppt에 char(0x61646d696e)라고 적혀있어서 cha..

Write up (Wargame)/LOS

[Lord Of SQL Injection] 2. cobolt 풀이

두 번째로 풀 문제는 cobolt 분석 이전 그렘린 문제와 비슷하게 구성되어있으나, if 부분에 admin을 검사하는 것이 추가되었습니다. 그러면 id가 admin이어야 한다는 정보를 주고 있네요. id가 admin이고 pw는 md5로 해싱됩니다. 방식이 여러가지 있겠지만, 처음에 이건 될까 ? 싶어서 생각해본 방식 중 하나는 이렇게 넣어주는 것이었습니다. (참고로 #는 ascii로 0x23 => %23임) 그러면 id가 admin이고 쿼리가 참이 되리라 생각했지만 위에 보시다시피 admin이 아니라고 나옵니다. 이유를 생각해보면 and 연산과 or 연산 때문 일 것 같습니다. 그래서 DB를 만들어서 해봤습니다. 시나리오 테스트 member라는 테이블에 칼럼을 다음과 같이 구성해두었습니다. 여기서 위와 ..

그믐​
'Write up (Wargame)/LOS' 카테고리의 글 목록 (3 Page)