분류 전체보기 (81) 썸네일형 리스트형 파일 다운로드 취약점이란? (정의, 공격 이용 방법, 다운로드 해야하는 파일) 파일 다운로드 취약점이란? : 웹 서버에 존재하는 파일 다운로드 시 파라미터 값을 조작하여 웹 사이트의 중요한 파일(DB 커넥션 파일 등) 또는 웹 서버 루트에 있는 중요한 설정 파일(passwd, shadow 등)을 다운받을 수 있는 취약점 이 공격도 역시 주요정보통신기반시설 취약점 점검 가이드에서 찾아볼 수 있다. 파라미터로 파일 경로를 받아 다운로드하는 페이지 download.php가 다음과 같이 존재할 때 공격자가 fileName 파라미터를 ../../../etc/passwd로 주면 다운로드 경로가 /files/../../../etc/passwd가 되어 실제 passwd 파일을 다운받을 수 있다. 파일 다운로드 취약점의 장점 이 취약점의 최대 장점은 소스코드를 다운로드할 수 있다는 것이다. 소스코.. 파일 업로드 취약점 대응방안 파일 업로드 취약점 공격이란? : 웹 페이지의 파일 업로드 기능을 이용해서 공격자가 원하는 임의의 파일을 업로드하는 공격 파일 업로드에 대한 자세한 내용은 아래 포스팅에서! https://studysteadily.tistory.com/41 파일 업로드 취약점 공격이란? (정의, 발생 원인, 발생 위치, 공격 핵심, 우회 방법 ) 파일 업로드 취약점 공격이란? : 웹 페이지의 파일 업로드 기능을 이용해서 공격자가 원하는 임의의 파일을 업로드하는 공격 공격자는 서버 측 스크립트(php, asp, jsp 등)를 이용해서 웹쉘을 제작 studysteadily.tistory.com 파일 업로드 취약점 대응방안 파일 업로드 취약점에 대응하기 위해서는 근본적으로 파일이 실행되지 못하게 해야한다. 1. 파일명 난독화 .. 파일 업로드 취약점이란? (정의, 발생 원인, 발생 위치, 공격 핵심, 우회 방법 ) 파일 업로드 취약점이란? : 웹 페이지의 파일 업로드 기능을 이용해서 공격자가 원하는 임의의 파일을 업로드할 수 있는 취약점 공격자는 서버 측 스크립트(php, asp, jsp 등)를 이용해서 웹쉘을 제작하여 업로드한다. 이를 이용하여 서버에 침투하여 권한을 상승하고 서버를 장악할 수 있다. 이 공격도 역시 주요정보통신기반시설 취약점 점검 가이드에서 찾아볼 수 있다. 1. 발생 원인 서버에서 파일을 업로드 받을 때 확장자를 검증하지 않음 2. 발생 위치 파일을 업로드할 수 있는 모든 곳 ex) 게시판, 프로필 사진, 서류 제출란 등 3. 파일 업로드 공격의 핵심 이 공격의 가장 핵심은 서버에 우리가 원하는 코드를 실행할 수 있다는 것이다. 그러기 위해서는 1) 웹 서버 측 실행 코드를 업로드할 수 있어야.. CSRF 대응방안 3가지 CSRF(Cross Site Request Forgery)란? : 사용자가 자신의 의지와는 무관하게 공격자가 의도한 행위를 특정 웹 사이트에 요청하게 하는 공격이다. 1. CSRF 토큰 사용자가 보내는 요청 폼에 랜덤한 토큰을 삽입한다. 서버는 이 토큰을 세션이나 db에 저장해두고, 사용자가 폼을 제출할 때마다 서버는 저장된 토큰과 비교해서 일치하는 경우 요청을 처리한다. 하지만 xss 공격이 가능한 경우에 csrf 토큰을 탈취할 수 있다. 2. Referer Header 확인 Referer Header란 요청이 어디서 왔는지 확인하는 헤더다. 일반적인 상황에서 비밀번호 변경 요청은 마이페이지에서 일어나지만 csrf 공격이 발생한 경우 게시판에서 일어날 수 있다. 이렇게 뜬금없는 곳에서 발생하는 요청을 .. 서비스 거부 공격 (Denial of Service, DoS) 공격 종류 DoS 공격이란? : 시스템을 악의적으로 공격해서 해당 시스템의 자원을 부족하게 하여 원래 의도된 용도로 사용하지 못하게 하는 공격 DoS 공격의 종류 DoS 공격의 종류는 자원 고갈 공격과 취약점 공격으로 나뉜다. 자원 고갈 공격은 내트워크 대역폭이나 시스템의 자원을 소모시키는 형태고, 죽음의 핑, SYN 플러딩, 스머프 공격 등이 있다. 취약점 공격은 특정 형태의 오류가 있는 네트워크 패킷 처리 로직에 문제가 있을 때 공격 대상이 그 문제점을 이용하여 오작동을 유발하는 형태이다. 랜드어택, 봉크/보잉크, 티어드롭 등이 여기에 해당한다. 1. SYN 플러딩 공격 TCP 프로토콜의 3 Way Handshake 연결방식의 문제를 이용한 공격이다. 클라이언트가 SYN만 보내고 아무런 동작을 하지 않는다면 해.. [php/mysql] 마이페이지 구현하기 (+ 개인정보 수정) 구현된 마이페이지 [mypage.php] [php/mysql] 페이징 구현하기 (메인 페이지) 구현해 놓은 메인 페이지에 페이징 처리를 추가하였다. https://studysteadily.tistory.com/10 [php/mysql] 게시판 리스트 구현하기 (메인 페이지) 페이징 처리는 하지 않고 게시글만 역순으로 출력되게 하였다. [index.php] 게시판 님, 환영합니다. 글쓰기 [index.css] .btn { border: none; background-color: lightgray; border-radius: 5px; height: 25px; color: black; } .colum studysteadily.tistory.com body 밑 php 코드 부분에 아래 코드 추가 $sql = "select * from board"; $result = mysqli_query($db_conn.. [SQL Injection] CTF - SQL Injection Point 4 문제풀이 기억하자. SQL Injection에서는 참/거짓에 따라 달라지는 응답을 확인해야함을. + select 문만 사용 or 사용 금지 주석 사용 금지 마이페이지 쿠키 user에 id가 담겨있는 것을 확인 참인 쿼리를 날렸을 때 결과와 거짓인 쿼리를 날렸을 때 결과가 동일 이럴 땐 db 에러를 유발해보고 에러가 출력되는지 확인 db 에러가 출력되므로 조건이 참일 때 db 에러를 유발시켜 참/거짓의 결과가 다르게 나오도록 하자 qwe' and (select 1 union select 2 where(1=1)) and '1'='1 를 이용해서 1=1 부분에 쿼리를 입력해서 참이면 select 1 union select 2로 구조체가 응답되게 하여 db에러를 유발하고, 거짓이면 select 1이 응답되어 결과가 기존.. 이전 1 ··· 3 4 5 6 7 8 9 ··· 11 다음