전체 글 (157) 썸네일형 리스트형 old-15 문제 접속 시,Access_Denied 라는 알림창과 함께메인 페이지로 리다이렉트되는 것을 경험했다.응답 값을 확인해 보니,script 태그로알림창을 띄우며, 최상위 도메인으로 리다이렉트 시키는 코드를 볼 수 있었다.그리고 그 아래에 Get Flag 버튼이 생성되는 코드도 볼 수 있었다.알림창과 리다이렉트 시키는 코드를 지워응답을 변조해서 받아보니코드처럼 Get Flag 버튼을 볼 수 있었다.해당 버튼을 눌러보니문제가 풀렸다는 알림창을 볼 수 있었다. old-24 문제 접속 시,클라이언트의 IP와 Agent가 출력되면서,IP가 틀렸다는 Wrong IP! 문구가 출력되는 것을 볼 수 있다.view-source 버튼을 통해 소스코드를 살펴보니if($ip=="127.0.0.1"){ solve(24); exit();}접속한 클라이언트의 IP가 127.0.0.1여야만 문제가 풀리는 것을 확인할 수 있었다.$ip = $REMOTE_ADDR;if($REMOTE_ADDR){ $ip = htmlspecialchars($REMOTE_ADDR); $ip = str_replace("..",".",$ip); $ip = str_replace("12","",$ip); $ip = str_replace("7.","",$ip); $ip = str_replace("0.".. 웹 페이지 만들기 - 게시판 검색 1. board.php 제목 작성자 내용 검색 게시판을 출력해주는 board.php에검색 내용과 카테고리를 search.php로 보내주는form 태그를 추가해준다.2. search.php 로그인 사용자만 접근 가능if(!isset($_SESSION['userid'])) { echo ""; echo "";}// DB 정보$conn = mysqli_connect('127.0.0.1', 'user', 'user1234', 'board');// 변경된 값// 사용자 검색 값 가져오기$search = $_GET['search'];$category = $_GET['category'];// 현재 페이지 값if(isset($_GET['page'])){ $page.. ORC - 4 문제 접속 시계정은 관리자로 고정돼 있고, 비밀번호만 값으로 받는 로그인 로직을 볼 수 있다.?pw=1234' or id='adminor 쿼리를 통해 id 값을 인젝션 했다.hello admin 이라는 문구를 볼 수 있었다. 하지만, 그 아래 로직에서DB에 저장된 비밀번호와 공격자가 입력한 비밀번호를 비교·검증하는 구문을 통과해야만문제가 solve 되는 것으로 보인다.처음엔 어떤 방식으로 접근해야 할지 고민했지만인젝션한 쿼리가 참일 시,"Hello admin"이라는 결과가 출력되는 것을 통해 Blind SQLi를 시도할 수 있겠다는 생각을 했다.?pw=1234' or id='admin' and ascii(substr(pw,1,1)) > 85 #ascii 함수와 substr 함수를 통해 Blind SQL.. SQL Injection 6 보호되어 있는 글입니다. SQL Injection 5 1. SQL Injection 포인트 찾기문제에서 주어진 계정으로주석 쿼리를 인젝션하여로그인 시도 시,로그인에 성공했다.SQLi 공격이 가능한 환경임을 알 수 있었다.SQL 문법 에러를 유도해보니MySQL 에러 메시지를 확인할 수 있었다.2. 로직 에러를 출력할 수 있는 함수 선택normaltic' and extractvalue('1', ':test') #로직 에러를 유도하기 위해extractvalue 함수를 이용하기로 했다.성공적으로 로직 에러를 출력할 수 있었다.3. 공격 Format 만들기normaltic' and extractvalue('1', ':test') #concat(0x3A, (select 'test'))normaltic' and extractvalue('1', (concat(0x3A, .. SQL Injection 4 보호되어 있는 글입니다. SQL Injection 3 1. SQL Injection 포인트 찾기문제에서 주어진 계정으로항등원 쿼리를 인젝션하여로그인 시도 시,로그인에 성공했다.SQLi 공격이 가능한 환경임을 알 수 있었다.SQL 문법 에러를 유도해보니MySQL 에러 메시지를 확인할 수 있었다.2. 로직 에러를 출력할 수 있는 함수 선택normaltic' and extractvalue('1', ':test') and '1' = '1문법 에러말고로직 에러를 유도하기 위해extractvalue 함수를 이용하기로 했다.성공적으로 로직 에러를 출력할 수 있었다.3. 공격 Format 만들기normaltic' and extractvalue('1', ':test') and '1' = '1concat(0x3A, (select 'test'))normaltic' and ex.. 이전 1 ··· 8 9 10 11 12 13 14 ··· 20 다음