본문 바로가기

분류 전체보기

(63)
웹 해킹 공부 일기장 10 - 1 (File Upload 취약점) 이번 시간에 공부해볼 취약점은 파일 업로드 취약점입니다. 이 취약점은 이름에서 알 수 있듯 공격자가 원하는 임의의 파일을 서버에 업로드하는 공격입니다. 발생 원인을 알아보면 임의의 파일을 업로드 하는 것이기 때문에 파일 업로드 시 제대로된 검증이 이루어지지 않을 경우 발생하게 됩니다. 발생 위치 또한, 파일을 업로드 할 수 있는 곳입니다. 그럼 만약에 어떤 파일이든 업로드할 수 있다면 어떤 일이 일어날까요?? 1. 서버측 실행 파일을 업로드하여 파일을 실행시킨다. 2. HTML 파일을 업로드하여 서버의 도메인을 가지는 파일이 생성되어 피싱유도를 한다. 3. Deface 공격. 이는 index파일을 변경시키는 공격으로 메인페이지를 변경시킵니다. (자신이 공격을 성공함을 알림) 4. XSS 공격. XSS 취..
DoS 공부 정리 이번 블로그에는 간단하게 DoS에 대해 공부해보겠습니다. DoS란?? DoS(Denial of Service) 말 그대로 서비스 거부 공격입니다. 서비스를 거부한다?? 애플리케이션에서 제공하는 기능들을 서버에 요청을 하면 서버에서 제대로된 서비스를 못하게 하는 것입니다. DoS 전략!! 1. 애플리케이션 취약점을 이용 2. 서버 리소스를 소모 3. 네트워크 대역폭 소모 + 물리적 공격 (실제 방화, 테러 등으로 서비스를 이용하지 못하게 함.) 물리적인 공격은 저희랑 상관이 없으니 나머지 3가지에 대해 정리해보겠습니다. 1. 애플리케이션 취약점 애플리케이션에 존재하는 취약점을 이용해 서비스 이용을 불가하게 만드는 것입니다. 예를 들어, 로그인 시 비밀번호 오류 횟수에 제한이 있는 경우 공격자는 모든 계정에..
웹 해킹 공부 일기장 9 - 1 (CSRF 정리) 저번 시간에 CSRF에 대해 알아보았습니다. CSRF란? 피해자가 서버로 임의의 요청을 보내게하는 공격이었습니다. CSRF 공격을 하기위한 절차를 정리해보겠습니다. 1. 중요한 요청 식별 서버에 보내는 요청 중 중요하다고 생각하는 요청들을 식별합니다. 예를 들어, 비밀번호 변경 요청과 같이 요청이 중요하다고 생각되는 것을 확인합니다. 2. 해당 요청을 만들 수 있는 지 체크 예를 들어, 비밀번호 변경 요청을 미리 만들어서 해당 요청을 보내기만하면 비밀번호가 변경되는지 확인합니다. 즉, 다른 추가 데이터의 요청이 필요한지 확인합니다. 일단, 2번까지 가능하다면 CSRF 취약점이 존재한다고 할 수 있습니다. 3. GET 방식 체크 요청을 처리하는 방식이 GET 방식으로 처리가 가능한지 확인합니다. 예를 들어..
웹 개발 공부 일기장 마지막으로 추가한 게시판 기능을 설명하며 웹 개발은 마치도록 하겠습니다. 1. 게시글 검색 기능 이제부터 검색 단어와 정렬 기능이 더해져 애초에 게시판에 접속할 때 해당 값을 받도록 하였습니다. 입력 받은 값들로 해당되는 게시글만 가져오도록 하였고 입력이 없을 시 기본 값을 지정해주었습니다. public static function searchBoard($page, $category, $word, $sortCategory, $sort) { $db_conn = connectDb(); $startPage = ($page - 1) * 10; $likeWord = "'%".$word."%'"; $query = "select * from boards where $category like $likeWord orde..
웹 해킹 공부 일기장 8 - 1 (CSRF) 이번 시간에는 새로운 웹 해킹 기법을 소개하겠습니다. CSRF (Cross Site Request Forgery) CSRF는 요청을 위조한다는 의미를 가집니다. 요청을 위조한다? 이해를 할때 클라이언트가 서버로 요청을 하게 만드는 것이라고 생각하면 됩니다. 그럼 어떻게 서버로 요청을 하게 만들까요? 우리는 XSS 공격을 배울 때 원하는 스크립트를 실행하게 만든 링크를 만들고 링크에 접속하면 해당 스크립트가 실행되었습니다. 이것처럼 원하는 요청을 링크로 만들어 해당 링크에 접속하면 서버로 요청을 보내게하는 것입니다. 비밀번호를 변경하는 페이지가 있습니다. update를 누르면 비밀번호가 변경됩니다. 비밀번호 변경이 어떻게 이루어지는지 버프로 확인해보겠습니다. post 메서드를 통해 pw에 값을 받아 해당 ..
웹 해킹 공부 일기장 7 - 과제2 (XSS) 3. admin 계정의 마이페이지의 정보란에 flag가 숨겨져있다! 1) XSS 포인트 찾기 게시글 내용에 작성한 특수문자들이 전부 그대로 출력되는 것을 확인할 수 있고 이 부분에서 우리는 XSS 공격을 해볼 수 있습니다. 2) 스크립트 삽입 삽입한 스크립트가 우리가 생각한대로 실행되는 것도 확인했습니다. 그럼 이제 admin계정의 마이페이지에서 정보를 가져오는 스크립트를 작성하면 될 것 같습니다. 3) flag 찾기 XSS 취약점이 발생한 곳은 게시글인데 가져올 정보는 마이페이지에 있습니다. iframe 태그를 사용하여 게시글에서 마이페이지를 그대로 가져와야할 것 같습니다. 을 게시글 내용에 넣어보겠습니다. 마이페이지도 가져오기 성공!! 이제 Nothing Here... 라는 단어를 가져오는 것을 해보..
웹 해킹 공부 일기장 7-과제1 (XSS) 1. Mypage에서 XSS가 일어난다! Flag 찾기 1) XSS 포인트 찾기 요청 시 user 값을 전달하여 마이페이지의 이름 부분에 값을 채워주며 해당 부분에 특수 문자를
웹 해킹 공부 일기장 (자바스크립트) XSS는 클라이언트측에서 스크립트를 실행시키는 공격이라고 배웠습니다. 이때 많이 사용하는 언어가 자바스크립트이기 때문에 자바스크립트를 얼만큼 잘 사용하냐에 따라 해당 취약점으로 엄청난 공격도 가능합니다. 최소한으로 알고있어야하는 쿠키 탈취가 있었습니다. 이외에 자바스크립트로 할 수 있는 것이 무엇이 있는지 기본적인 것들을 알아보겠습니다. 1. Page Redirect 자바스크립트로 새로운 페이지를 불러올 수 있습니다. - location.href = "https://google.com"; - location.replace("https://google.com"); 2. 주소창 변조 주소창의 경로를 변경하여 보여줄 수 있습니다. (실제 해당 경로는 아님.) - history.pushState(null, nu..