본문 바로가기
  • Trace
tip/보안공부하는법

웹 보안 공부하기

by seleuchel 2021. 3. 17.

웹 보안 공부하기 전에,

웹 해킹에 어떤 것들이 있는지 살펴보고 실습만 간단히 해 본 다음에 

웹 개발을 진행하자. PHP, JSP(선행 JAVA) 등 옛날 언어(?) 일 수록 좋다. 

 

왜냐면,

이렇게해야 웹 보안을 공부하면서 내가 했던 웹 공격이 어떤 것인지도 이해할 수 있고, 웹 시큐어 코딩도 할 수 있으니

 

[웹 언어]

* HTML, JS, CSS

* PHP, JSP, PYTHON, NODEJS(사실상 JS), ...  # 이 중 하나만 해도 될 듯.

 

[기본 숙지]

어차피 웹서버 구축할 때, 사용할거라 공부해야하긴 함. 구축하면서 공부하면 됨. 미리 하면 좋지만, 너무 힘듦;

* Database : mysql, sqllite, oracledb, mongodb ... 중 웹서버에서 사용할 거 하나 선택해 구축 및 공부

ㄴ 개인적으로 no sql보다는 쿼리 명령을 넣는 db(R.. 용어가 생각이 안남!) 부터 공부하는 게 좋음

* 웹서버 구성 및 통신 이해 : 아파치랑 php 서버랑의 차이를 이해하고, http 통신이 어떻게 이루어지는지 이해할 정도면 ok

* 네트워크 기본 지식 : 프로토콜, 포트, url 등의 기본 지식만 좀 들고가기

 

[기본 숙지(보안)]

* OWASP TOP10 2017

 

[툴]

* BURP SUITE : 프록시 서버. 웹페이지의 REQUEST, RESPONSE 확인 및 수정 시 사용

ㄴ 유사한 도구 : Paros

* WIRESHARK : 네트워크 패킷 스니퍼. 웹서버 - 브라우저 간에 어떤 패킷이 왔다갔다하는지 살펴볼 수 있음

* Kali (ex. metasploit) : Kali는 다양한 해킹 도구가 설치되어있다. netcat을 이용해 리스팅 가능, 멀웨어 배포 서버를 구축할 수도 있음, 기타 자동화 공격 등 가능

 

[참고 자료]

- kisa의 시큐어코딩 가이드

 

[모의 해킹 환경]

* beebox

* webgoat

* metasploitable2(리눅스), 3(윈도우) #2는 beebox 내장

 

[워게임 사이트]

* 써니나타스 : 웹도 있지만 다양한 분야의 웹 워게임 존재

* Lord of SQL : SQL Injection을 주구장창 연습할 수 있다.

* webhacking.kr : 웹해킹 연습할 수 있는 사이트. 사이트가 리뉴얼 되었다.

* 드림핵 : 좋다고 한다. 나는 아직 해보지는 않았다.

 

[해보면 좋은 것]

* wordpress 구축해보기