반응형 분류 전체보기87 웹 시큐어 코딩 : SQL Injection 약 2개월 반에 걸쳐서 로그인, 게시판, 마이페이지 등 기본적인 기능이 들어간 웹 서비스를 구축해보았다. 문제는, 이 웹 사이트는 해킹 취약점에 대한 대응이 전혀 안 되어 있다는 것이다. 그래서 이론으로 공부했던 웹 해킹 취약점들에 대한 방어, 웹 시큐어 코딩을 해보려고 한다. 첫 번째 방어할 취약점은 SQL Injection! SQL injection의 근본적인 대응방안은 바로 prepared statement를 사용하는 것이다. 내가 만든 웹 페이지에서 SQL Injection이 일어날 수 있는 곳은 크게는 로그인, 회원가입, 게시판 및 주소 검색 등이지만, 실제로는 대부분의 php 파일에서 SQL로 DB와 연결하여 무언가 작업을 수행하고 있기 때문에, 사실상 파일에 Prepared Statement.. 2022. 2. 20. Oracle Cloud : XSS(Cross-Site Scripting) 실습 Stored XSS 실습에서 로컬이 아닌 내 own 서버로 쿠키 탈취를 해보고 싶다는 일념 하나로 시작한 Oracle VM 생성기! Oracle 등록에서 실제 쿠키 탈취에 성공하기까지... "왜 안되지?ㅠㅠ"만 3일 동안 외친 것 같다. 이번 포스팅에서는 서버에 nginx와 php 설치해서 실제 쿠키 탈취를 실습해볼 것이다. ① Oracle 쉘 접속하기 저번 포스팅에서 Oracle Free Tier에 등록하고, 쉘에 접속하는 것까지 완료하였다. 이전 포스팅 : [모의해킹_실습] - Oracle Free Tier : 등록 & 접속 ② nginx 설치 및 포트 열기 우리의 서버를 웹 서버로 활용하기 위해 nginx를 설치해준 후, 포트를 열어주자. (이때가 고생의 시작인 것을.. 나는 알지 못했다... 그냥.. 2022. 1. 28. Oracle Cloud : Free Tier 등록 & 접속 오로지 XSS 실습을 직접 해보고 싶다는 일념 하나로 시작된 oracle cloud 서버 만들기!! 아직 클라우드나 네트워크 쪽 지식이 없는 나이기에 단계 하나하나가 장벽이었다...! Oracle Cloud 등록, 접속과 nginx 설치, php 설정 두 포스팅으로 나누어 XSS 쿠키 탈취를 실습해보자!! ① Oracle 회원가입 Oracle Free Tier를 사용하기 위해서 회원가입을 먼저 진행하자. 계정 정보를 입력하고 메일 인증을 하면, 비밀번호 및 서버 위치를 선택하는 Form을 작성해야 한다. 서울과 도쿄는 이용자가 많다는 경고가 뜨길래 나는 싱가포르로 설정했다. 서버 위치는 나중에 변경할 수 없기 때문에 신중히 결정해야 한다. 무료 체험이 끝난 후 계정을 업그레이드할 경우를 위해 카드를 등록.. 2022. 1. 27. Php로 웹 개발하기 : 문의 게시판(5) 이제 웹 개발이 거의 마무리되었다. Q&A 게시판의 잔기능들을 마무리 짓고, 관리자의 댓글 다는 기능만 구현하면 웹 개발은 끝이다! 메인 페이지를 조금 정리하고, 데이터를 삭제하는 기능에서 테이블의 id를 정렬하는 등 추가적인 보완만 하고 웹 해킹 공격 이론에서 다뤘던 대응 방안을 적용해 볼 것이다. [qna_read.php] 문의 게시판 2021. 12. 31. Lord of SQL Injection : Evil_wizard[24] [Level 24. Evil_wizard] Sol → ?email=aasup3r_secure_email@emai1.com 23단계와 마찬가지로, order의 특성을 이용해서 email을 구해야 한다. order=1을 먼저 넣어보았다. admin의 score가 rubiya의 score보다 작아서, 이메일을 제외한 어떤 column으로 정렬해도 admin이 먼저 출력된다. 아마 그래서 hell_fire와 똑같다고? 진짜?라는 뉘앙스의 도발(?)을 한 것이 아닐까.. 근데 사실 나는 저번 단계에서 score를 안 쓰고 풀었기 때문에 똑같은 코드로 답을 구할 수 있었다. same with hell_fire? really? 에 당당하게 yes!라고 답한 후 코드를 돌리면 된다. 이메일의 길이로 정렬해보니, 이번에.. 2021. 12. 30. 파일 업로드 우회 기법 파일 업로드 취약점과 대응 방법에 대해서는 편에서 정리한 적이 있다. 해킹 맛보기 책에서도 새로운 우회 기법을 볼 수 있어서 정리해보았다. ① AddLanguage 아파치 설정 파일에는 AddLanguage라는 옵션이 있다. 아파치 설치 환경이나 설치 방식에 따라 설정 파일의 이름, 위치, 내용은 조금씩 다른데, 필자의 경우 우분투를 사용하고 있고, apache2.conf라는 이름으로 찾을 수 있었다. $ find / -name apache2.conf 2>/dev/null /etc/apache2/apache2.conf AddLanguage는 특정 파일 확장자를 특정 언어에 매핑하는데, 다음과 같이 옵션이 주어진 경우, 확장자가 .kr인 문서를 kr로 처리되는 것이다. AddLanguage en .en A.. 2021. 12. 29. 이전 1 2 3 4 5 ··· 15 다음