우분투(Ubuntu)에 리눅스 무료 웹방화벽(WAF)인 ModSecurity를 설치 및 설정해본다. 그리고 sql인젝션이 되는 취약한 웹페이지에서 ModSecurity에 sql인젝션 룰설정을 통해 인젝션을 방지할 수 있음을 보인다. 우분투 16.04 x64에서 진행했고 아파치는 Apache 2.4.18 버전이 설치되어있다. - OS 환경 : 우분투 16.04 x64 - apache2 버전: Apache/2.4.18 (Ubuntu) 우분투에 웹방화벽(WAF) ModSecurity 설치 ModSecurity는 apt-get으로 간단히 설치할 수 있다. # apt-get install libapache2-modsecurity -y 설치확인은 2가지 방식으로 할 수 있는데 apachectl -M 을 사용해 로드..
무려 2015년경에 웹해킹 공부를 하겠다고 APM 구축 후 제작했던 허접한 페이지이다. 진짜 세월 빠르다.............벌써 5년이나 흘렀다니.. 앞으로 해당 카테고리에서 다룰 모든 웹관련 테스트나 실습은 해당 웹페이지를 통해 수행할 것이다. DB랑 연결되어 있는 부분은 5곳정도 있다. (다행히도 DB 백업을 해둔 파일이 있어서 바로 복원할 수 있었다) 웹페이지 기능소개 회원가입 기능 회원가입 기능이 있다. 회원가입을 하면 user 테이블에 사용자 정보가 추가된다. 로그인/로그아웃 기능 회원가입된 정보대로 로그인을 수행하면 해당 유저에 대한 세션이 생성되고 로그인 상태가 유지된다. 로그인 기능이 있으니 당연히 로그아웃도 있다. 로그인된 상태에서 로그인 페이지로 들어가면 로그아웃 버튼이 활성화된다...
백업 데이터베이스(DB) 복구하기 mysql 데이터베이스를 백업했으면 .sql 파일이 생겼을 것이다. 이렇게 백업한 데이터베이스 파일은 간단한 명령어를 통해 복원할 수 있다. 현재 데이터베이스는 아래와 같이 기본 데이터베이스만 존재한다. 전체 데이터베이스를 백업했기 때문에 전체 데이터베이스를 복원하는 것인지 개별 데이터베이스를 백업했기 때문에 개별 데이터베이스를 복원하는 것인지에 따라 살짝 다른데 아래와 같이 명령어를 입력했을 때 'ERROR ~ No database selected' 라는 에러 구문이 발생한다면 개별 데이터베이스를 백업한 파일이기 때문에 데이터베이스를 선택해주어야 한다. # mysql -u [계정명] -p < [sql파일] # mysql -u root -p < dasa.sql 따라서 m..