본문 바로가기

반응형

분류 전체보기

(246)
webhacking.kr old 59번 문제풀이(Writeup) webhacking.kr old 59번 문제풀이(Writeup) 문제를 들어가면 위와 같이 출력된다. 코드가 있으니 코드부터 확인하자. 핵심은 로그인할 때 lv가 admin이면 문제가 해결된다. 먼저 몇 가지 테스트 값을 넣어보자. 보면 id와 phone이 넘어가고 그와함께 lid와 Iphone 값이 함께 전달되는 것으로 보인다. 이번엔 login에서 같은 값을 넣으니 lid와 lphone에 값이 전달된다. id는 저장되고 lv는 로그인될 때 지정되는 것으로 보인다. mysqli_query($db,"insert into chall59 values('{$_POST['id']}',{$_POST['phone']},'guest')"); 데이터베이스에 insert할 때 모습이다. 뭔가 여기서 SQL Injecti..
webhacking.kr old 61번 문제풀이(Writeup) webhacking.kr old 61번 문제풀이(Writeup) 문제를 들어가면 위와 같이 출력된다. 코드가 있으니 코드부터 확인해보자! 먼저 id가 없으면 id는 guest로 접속이 된다. 또 id는 addslashes함수가 있어서 '(싱글쿼터), "(더블쿼터), \(백슬래시), NuLL바이트 앞에 '\'가 추가된다. 따라서 SQL Injection 공격을 막는 함수로 사용된다. 이후 preg_match를 통해 (), |, select, from, ',', by 가 대소문자 구분 없이 필터링된다. 또 id의 길이가 15를 넘어서는 안된다. 먼저 admin을 그냥 넣으면 안될 것 같아서 URL 인코딩을 했다. "%61%64%6d%69%6e" 이렇게 하면 15글자이기 때문에 Access Denied가 출력..
webhacking.kr old 51번 문제풀이(Writeup) md5(,true) 취약점 webhacking.kr old 51번 문제풀이(Writeup) 문제를 들어가면 위와 같이 출력된다. 밑에 코드가 있으니 확인해보자. id, pw는 post 메소드로 움직인다. 또 id는 입력값에 싱글 쿼터, 더블 쿼터, \(백슬래시), NULL바이트 앞에 \(백슬래시)를 넣어서 SQL Injection을 방어한다. pw는 md5로 암호화한다. 그래서 맞으면 해결이 되고, 아니면 Wrong을 출력한다. 여기서 처음보는 부분은 md5함수에서 true 값이 들어가 있는 것이다. 찾아보니 md5( __, true)인 경우 값이 raw binary로 출력된다고 한다. 따라서 md5( __, true)를 이용해 or 또는 =이 나오도록 해서 입력하는 것이다. 그럼 코드로 작성해서 md5에 어떤 값을 넣으면 '='..
webhacking.kr old 43번 문제풀이(Writeup) webhacking.kr old 43번 문제풀이(Writeup) 문제를 들어가면 위와 같이 출력된다. webshell을 업로드해서 보는 문제다. 그래서 간단한 webshell을 Kali Linux에서 가져올 예정이다. webshell의 경로이다. 여기서 simple-backdoor.php를 복사해서 사용했다. 필터링이 되고 있다. 확장자 우회를 할까 싶었는데, 먼저 간단한 것부터 도전해보고자 한다. 먼저 Burp Suite로 캡처를 했다. POST방식으로 php파일이 전달된다. 근데 여기서 Content-type이 php 파일을 인식하고 있다. 이걸 한번 바꿔봤다. Content-type: audio/mpeg audio/mpeg는 mp3파일과 같은 오디오 파일이다. 바꾸고 Forward를 해줬다. web..
당신의 뇌는 최적화를 원한다 - 서평 및 독후감 정리 당신의 뇌는 최적화를 원한다 - 서평 및 독후감 정리 당신의 뇌는 최적화를 원한다 지금 당신의 뇌는 최상의 컨디션인가? 도파민, 세로토닌, 멜라토닌 등 7가지 뇌 속 호르몬 ‘최적화’시키는 구체적인 실천법 직장인이든 자영업자든, 우리는 대부분 ‘뇌’로 먹고사는 사람들인데 뇌를 너무 몰라서, 너무 아무렇지 않게 혹사시키고 있는 것 아닐까? 이 책은 도파민, 아드레날린, 세로토닌 등 우리 뇌 속 대표적인 ‘신경전달물질’ 7가지에 대해 그 기능과 역할을 소개하고, 필요에 따라 스위치처럼 끄고 켜는 생활습관, 식습관, 업무방식을 자세히 설명한다. 의욕과 열정, 행복감을 되찾고 싶다면 도파민 / 집중력?기억력?정확성이 필요할 때는 노르아드레날린 / 몰입해야 하는 상황에서는 아드레날린 / 스트레스가 머리끝까지 쌓였..
webhacking.kr old 40번 문제풀이(Writeup) webhacking.kr old 40번 문제풀이(Writeup) 문제를 들어가면 위와 같이 출력된다. 궁금하니까 로그인부터 눌러보자. 로그인을 해보니, no=1, id=guest, pw=guest라는 것을 GET 메소드 방식으로 전달한다. no=2로 넣어서 실패를 해보니, failure이 나온다. 이번엔 no=0으로 넣으니 아무 반응을 하지 않는다. 따라서 이번 문제도 Blind SQL Injection이지 않을까 싶다. 그래서 가장 의심스러운 no에서 injection이 되는지 시도해봤다. no=0||1=1 을 넣고 나머지는 그대로 해서 로그인이 되는지 확인해봤고, 그 결과 로그인에 성공했다. 그렇다면 no=0||no=2를 넣고 id=admin&pw=admin으로 넣는다면 로그인이 될까 싶었다. 해보니..
webhacking.kr old 29번 문제풀이(Writeup) 파일업로드를 통한 SQL Injection webhacking.kr old 29번 문제풀이(Writeup) 문제를 들어가면 위와 같이 출력된다. 사실 들어가자마자 backdoor를 올렸는데 실행이 안돼서 다른 느낌의 문제구나 싶었다. 바로 위에 공지를 보면 FLAG가 다른 테이블에 있다고 한다. 이걸 보고 이건 database 문제이구나 싶었다. 파일 업로드 취약점을 통해 database의 정보를 알아올 수 있다는 것을 오늘 알았다. 파일 업로드 취약점에 대해 더 공부해야겠다. insert into 테이블명 values (값) 먼저 MySQL에서 입력을 할 때 위와 같이 들어간다. ex) RRR 테이블에 새로운 레코드를 추가할 때 INSERT INTO RRR(ID, Name, ReserveDate, RoomNum) VALUES(5, '이순신', ..
webhacking.kr old 28번 문제풀이(Writeup) htaccess 취약점 설명 webhacking.kr old 28번 문제풀이(Writeup) 문제를 들어가면 위와 같이 출력된다. 이번에도 파일 업로드 취약점인 것 같다. Mission으로 ./upload/rGshn9SzBErB/flag.php 를 읽으면 된다고 한다. 점수만 보면 난이도 있는 문제인데, 뭔가 쉬울 것 같다. 코드엔 별다른 힌트가 없기 때문에 바로 여러가지 시도를 해봤다. 일단 Kali Linux에 있는 웹쉘 몇 가지를 올려봤다. php 파일이 올라가는 걸 보면 php에 대한 필터링이 없는 것 같은데 실행되지 않는다. 몇 번 웹쉘을 올려도 작동이 안되는 것을 보고 웹쉘을 올리는 문제가 아니라는 생각이 들었다. 그래서 구글링을 하다 보니 php 관리자 권한 인증 우회를 위해 ".htaccess" 확장자를 알게 되었다...

728x90