Hacking-1
로그인 시스템을 구현하고 api를 통해 백엔드와 통신하는 과정을 거치며, 한 가지 의문이 생겼다. 누군가가 내 웹사이트의 어딘가를 해킹한다면, 나는 어떻게 대처를 할 수 있을까? 해킹을 하면 내 웹사이트는 어떻게 될까? 그리고 어떻게 내 웹사이트의 취약점을 알아냈을까…?
물론 아무것도 없는 내 포트폴리오 웹사이트를 해킹할 이유는 없겠지만, 나아아아중에라도 백엔드를 하다 보면 어쩔 수 없이 이러한 사고를 미리 방지하는 쪽이 현명할 것이다. 적을 알고 나를 알면 백전백승이라 하니, 어떻게 해커들이 웹사이트를 해킹하는지 방식을 안다면, 막아내는 방법도 알 수 있지 않을까.
윤리정 해킹
말 그대로 시스템의 시큐리티 취약점을 알아내기 위한 해킹이다. 일반적으로 범죄에 사용할 목적이 아닌, 기업 등에서 자사의 시스템에 결함이 있는지 확인할 목적으로 사용되는 해킹. 불법적인 사용은 당연하지만 해서는 안된다. 굳이 멀쩡한 시스템을 해킹하지 않아도 합법적으로 해킹해도 괜찮은 여러 테스트 사이트가 존재하니까, 거기서 하면 된다.
시작하기
How Should I Start Learning Ethical Hacking on My Own? - GeeksforGeeks
우선 아는 것이 없으니, 뉴비들을 위해 준비한 친절한 블로그를 참고한다.
우리가 알고 있어야 하는 개념
- networks
- networking devices
- networking protocols
- websites
- web technologies
- content delivery mechanisms
- many more components of online infrastructures.
위의 개념에 익숙하고, 서로 어떠한 방식으로 유기적으로 동작하는지 알고 있다면, 다음으로 알고 있어야 하는 것들은
- web (HTML)
- a scripting language(JavaScript)
- a data transfer language(XML or JSON)
- components of a web-based system
- knowledge of computer networks and TCP/IP suite
- knowledge of basic programming in C/C++/Java/Python
나는 이중에서 html, javascript, json, python을 알고 있고, c,c++,java도 다뤄본 적은 있다. 많이 사용하지는 않았지만…
온라인 학습
학습을 위한 추천 책이 존재하지만, 책보다는 영상으로 공부하는 쪽이 더 맞기 때문에 유튜브나 온라인 강좌를 찾아보았다.
찾아보다 발견한 매우 친절한 사이트. 뉴비친화적, 실습형 스터디인듯 하여 당분간 이 사이트를 통해 감을 잡아가려고 한다.