해킹을 배우고 싶은데 어떻게 해야하죠?

anonymouskldpuser의 이미지

안녕하세요. 저는 컴퓨터를 좋아하는 중1 학생입니다. 저는 한 몇 년 전에 컴퓨터를 처음 접하고 나서 계속 사용하다 보니 컴퓨터공학이라는 학문에 흥미가 생기더군요.. 일단은 대학교 입학 전 해킹 기초과정까지 배우는 걸 목표(?)로 잡고 있는데요. 아마 대학 진학은 컴퓨터 공학과로 가지 않을까 생각 중입니다. 어디에 질문을 올리면 좋을까 하다가 생각나는 게 여기밖에 없어서 방금 가입하고 첫 글을 작성하게 되네요 :)

제가 듣기론 프로그래밍부터 시작하고 그다음 시스템과 네트워크를 배운 다음 해킹기법을 찾아보라는데 솔직히 믿음직스럽지가 않습니다. 구체적으로 설명도 되어있지 않고... 무엇보다 솔데X크나 아X티뱅크같은 유명 학원들 소개하는 글들이라서 별로 신뢰가 가지가 않더군요.
그래서 여기는 실력있는 분이 많을 것 같아서요.

일단 저는 지금 Python 언어 배우고 있는데 이거 다 배우고 C, C++이나 배우려고 일단은 계획을 잡고 있거든요? 리눅스는 아직 갈피를 못 잡고 있어요.

그래서 일단 제가 당장 배워야하는 것들만 좀 세분화시켜서 알려주시면 안될까요? 게다가 네트워크 부분은 아예 갈피가 안 잡히더라구요;

그리고 가상 머신에 깔아서 사용할 안정성 높은 배포판 하나 추천해주세요! (사람들은 CentOS, Debian, Slackware, OpenSUSE, Arch, Manjaro 등 추천해주시는데 너무 선택의 폭이 넓으니까 약간 헷갈려서요) (배포판 설정이 어려워도 좋습니다) 저는 개인적으로 데비안과 만자로를 선호합니다만..

혹시나 이것에 관해서 잘 정리되어 있는 웹사이트 있으면 소개해주시기 바랍니다.

세벌의 이미지

우분투가 버그덩어리 운영체제인가요? 그런 내용은
https://forum.ubuntu-kr.org/ 에 써 주시면...
어려워도 좋다면
http://www.linuxfromscratch.org/

저는 가상머신에 우분투도 설치해 봤고, 다른 머신에 데비안도 설치해서 잘 쓰고 있네요.
BSD도 괜찮은데 우리나라에는 쓰는 사람이 많이 줄어들었....

anonymouskldpuser의 이미지

제가 우분투를 써보니 설치가 잘 진행되지 않거나 중간에 멈추는 일이 종종 있었습니다. 데비안같은 운영체제는 그런 적이 없었는데.. 우분투 특성 상 그럴 수도 있죠. 우분투 잘 쓰시는 분도 많은데 저는 개인적으로 우분투는 마음이 가거나 하지는 않네요. 물론 초보자의 견해이기에 틀릴 수도 있다는 점 양해 부탁드립니다.

anonymouskldpuser의 이미지

아 그리고 아까도 말씀드렸지만 우분투 좋아하시는데 제가 버그덩어리라고 해서 기분 나쁘셨다면 사과드리겠습니다. 조금 오해가 있게 글을 쓴 것도 같군요. 다시 말하지만 저는 초보자의 입장에서 저의 경험을 바탕으로 말한거라서 전문가 입장에서 객관적으로 보면 틀릴 수 있는 부분도 많습니다.

세벌의 이미지

사과 드린다니 맛있게 먹겠습니다. :)
https://wiki.kldp.org/wiki.php/DocbookSgml/Ask-TRANS#RTFM 도 들러보셔요.

anonymouskldpuser의 이미지

감사합니다.

anonymouskldpuser의 이미지

Linux from Scratch라는 웹사이트에는 정말 좋은 정보들이 많이 들어있는 것 같군요. 정리도 잘 되어있구요. 잘 읽고 있습니다. 정말 고맙습니다.

anonymouskldpuser의 이미지

LFS 프로젝트를 알려주신 덕에 제가 프로그래밍, 시스템을 배울 곳을 찾았습니다. (프로그래밍은 원래부터 알고 있었고 시스템은 갈피를 못 잡고 있었는데 정말 감사드립니다) 이제 네트워크 강의사이트만 찾으면 저 혼자 어떻게든 배울 수 있겠습니다. 혹시나 네트워크에 관련된 것을 잘 알려주는 웹사이트 있을까요? 구글에 검색해봤는데 찾기가 힘들군요.

goforit의 이미지

이 분야에서 전 세계적으로 유명한 회사 하나 소개합니다.

https://www.riscure.com

나중에 영어 공부 열심히 해서 이 회사에서 들어가 보세요.
하루 종일 남의 제품을 공식적으로 해킹하는 것을 업으로 할 수 있습니다. ^^

anonymouskldpuser의 이미지

감사한데 저는 지금 컴퓨터에 관해서는 별로 아는 게 없어서 배우려고 하는데요. 혹시 그 쪽 분야에 대해서 아신다면 설명 좀 해주실 수 있나요?

Rubypops의 이미지

공부하시다가 모르는걸 모아서 각 파트 별로

질문을 한다면 답변을 드리지만

너무 포괄적으로 나 기초 몰라요. 답변주세요는 .

질문을 하는 예의가 아닌가 생각을 해봅니다.

기분이 나쁘실지 모르겠지만 질문을 답변해드리는 사람들 입장도

한번쯤 생각을 해 주셨으면 합니다. ^^;;; 삐진거 아니죠??

서적을 추천해달라면 드릴수 있습니다. :)

루비를 공부하고 사랑하는 프로그래머

anonymouskldpuser의 이미지

저는 강의를 해달라는 게 아니라 해킹 전 단계를 좀 세부적으로 나누어서 설명해줄 분이 필요했습니다.

예를 들어서 프로그래밍이라고 하면 어떤 프로그래밍을 배우면 좋다.. 아니면 이런 서적을 추천한다.. 라는 게 필요했지 오해가 있었던 거 같습니다.

저는 최대한 답변자의 시간을 존중하려 하고 있습니다. 제 하려는 태도와 의지를 보여주고 싶은데.. 제가 문과 체질이 아니고 이과 체질이고.. 또 나이가 어리다보니 첫 글을 쓰고 검토했어야 하는데 오해할 여지가 많았습니다. 미안합니다.

anonymouskldpuser의 이미지

저는 하루에 2~3 시간을 이 쪽에 투자할 수 있습니다. 워낙에 앉아있는 것을 좋아하기에...

그리고 양질의 정보를 제공한다면야.. 영문도 상관 없구요. 저는 자율적으고, 융통성 있게 스스로 학습하고 싶습니다. 좋은 정보를 얻을 수 있는 공간/서적을 알려주면 좋겠습니다.

...나름대로 굳게 마음 먹고 있습니다. 워낙에 흥미를 느끼기에..

:-)

anonymouskldpuser의 이미지

그리고 회사가 정말 참신해 보이는군요.

Rubypops의 이미지

유튜브에 백도어 해킹이라고 치면 나오고요

컴퓨터 기초 지식이야 뭐 시스탬. 네트워크. 운영체체.알고리즘.이거 모르면
나중에 대학가면 많이 힘들어집니다 수업 따라가는데 지장이 있을.....

해킹은 크게 나누면 네트워킹 해킹 시스탬 해킹 두가지인데.

c와 java를 공부하라고 조언드립니다.

개인적으로는 가상머신 설치를 별로 좋아하지 않습니다.

차라리 노트북을 사서 리눅스를 설치했으면 했지.

그리고 파이썬 배우고 C배우고 java . html . jsc 이정도만 익혀도 무난할겁니다.

대중적으로 많이 배우고 많이 쓰이는것 위주로만 알아도 프로그래밍이나

해킹에는 지장이 없을 겁니다.해킹 기법을 배우고 보안 쪽으로
방향을 잡으세요.

그리고 운영체제는 어디가나 잔버그나 이런거 있기는 있습니다.
세상에 완벽한게 어디있나요. 계속 수정하고 보완해 나가는거지

해킹을 배우기 위해 대학을 간다기 보다는 보안분야를
공부하러 간다고 하는게 맞을것 같네요.

It학원에서 가르치는것들 다 구글에 있고요. 학원 다니는 애들 주변에 몇있는데 독학으로 배우는 애들이랑 비슷합니다. 프로그래밍 언어를 익히는건 금방이지만. 그걸 어떻게 간결하고 남들이 보기 쉽게 짜는게 실력입니다.

여기는 프로그램 언어 별로 나온 무료 전자 서적입니다. 김응용씨가 수고해주시는. . https://wikidocs.net 설명을 쉽게 하신다고 하나. 좋은 사이트.

열심히 해보세요. :)

루비를 공부하고 사랑하는 프로그래머

anonymouskldpuser의 이미지

음.. 노트북에 설치해봤는데 인터넷이 안되더라구요. (wireless) 이더넷은 잘 되는데 찾아보니 non-free 소프트웨어를 내장하고 있어 그렇다던데요.
참고로 제 개인용 컴퓨터 (노트북)으로 윈도우로 부팅 후 장치 관리자 들어가서 네트워크 어뎁터(?) 쪽에 들어가보니 이렇게 써 있었어요.

Bluetooth Device (Personal Area Network)
Bluetooth Device (RFCOMM Protocol TDI)
Broadacom 802.11n Network Adapter
Reaktek PCIe GBE Family Controller

데비안 설치 도중 무슨 펌웨어가 없다길래 구글에 검색한다음 그 드라이버에 대해서 찾아보고 설치했는데도 안 되더군요 (다른 배포판은 어디에 그런 게 있는지도 몰라요)

이것 참 우연인게 저도 지금 wikidocs.net에서 Python을 배우는 중이거든요..

우분투 잔버그 얘기는 약간 개인적인 감정이 실려 있었습니다만 설치 도중 자꾸 멈추더군요.. 그래서 그랬습니다. (버그 리포트 했습니다.)

아 그리고 하나 잘못 쓰신 게 있는데 김응용 => 박응용입니다.

제가 지금 LFS 프로젝트라는 곳에서 리눅스를 배우고 있는데 어제 처음 시작해서 영어를 대충 소개문을 읽어보니 제 번역 실력으로 해보니.. 자신의 성향에 맞게 customizable 가능한 매우 자유로운 리눅스 데스크탑 환경을 구축해 나갈 수 있는 능력을 일반인에게 부여하는 게 목표인 프로젝트라던데

http://www.linuxfromscratch.org/lfs/downloads/stable/LFS-BOOK-7.8.pdf 위 웹사이트에서 배우려고 합니다.

아직 시작은 안 했어요 어제 처음 안 거라서.

저거 리눅스 가르쳐주는 거 맞죠?

JSC는 구글링해도 안나오는데 JSP를 잘못 쓰신건가요? 아니라면 설명 좀 부탁드립니다.

답변 고맙습니다.

Rubypops의 이미지

Jsp가 맞습니다 .인터넷 안되는건 운영체제 설치 하실때 랜카드 드라이버 빠트려서 그런거니 하드 밀고 다시 잡아서 설치 해보시길...

그리고 해킹 쪽이 관심이 많으면 칼리 리눅스라고 있습니다.

그리고 해킹책도 칼리 리눅스를 통한 백도어 책이 교보 문고에 있는걸로 알고 있어요.

리눅스 쓰다가 나중에 메킨토시로 넘어오세요. 유닉스 기반 공부하고 싶으면

Windows로 프로그래밍 안한지 3년 넘었네요.

해킹에 관해 세세하게 알고 싶으시면 책을 사셔서 많이 보신후에 인터넷 보는게 맞다고 저는 생각합니다.

해킹의 예술 뭐시기 책도 있고

그리고 프로그래밍으로 돈 벌고 싶으면 swift 로 아이폰 프로그래밍 추천

프로그래밍때 중요한건 알고리즘 짜는거랑 데이터 SQL 그리고 언어 네트워킹 시스탬 이정도. 나머지 는 천천히 보시면 되고.

루비를 공부하고 사랑하는 프로그래머

anonymouskldpuser의 이미지

닉네임부터 뭔가 매킨토시 사랑하실 것 같습니다... (부정적인 의미는 아닙니다) 뭐 워낙에 잘 만들어졌다고 소문이 난 BSD 기반 커널을 이용해서 그렇겠죠... 하드웨어가 독점적이라는 최대 단점이 있지만 그게 최대 장점이 되어 기기에 최적화가 잘 되어있다고 볼 수도 있다고 생각합니다. 그리고 매킨토시는 커널 뿐만 아니라 애플리케이션도 꽤 단단하게 만들어졌다고 생각합니다. (몇 번 써봤습니다. 윈도우와는 다르게 좀 더 단단하고 빠른 느낌이더군요.)

랜카드 드라이버는 어떻게 설치해야 할지... 구글링해도 잘 못찾겠습니다. 제가 위에 말씀드린 네트워크 어뎁터 이름에 맞는 파일 다운로드 링크나 그에 관한 설명이 있는 웹사이트 좀 찾아 주실 수 있나요? 솔직히 마음은 랜카드 드라이버만 찾아도 다 갈아엎고 리눅스로 옮기고 싶습니다.. (하드디스크가 2개라서 남은 한 개는 리눅스를 위해서 새 것같은 SSD를 남겨두었습니다)

고맙습니다!

jick의 이미지

1. 해킹을 제대로 하려면 어차피 코딩을 알아야 함.
2. 해킹은 별로 쓸데가 없지만 코딩은 쓸데가 많음.

그러므로 코딩공부를 추천합니다. 한 10년쯤 하면 대충 감이 생깁니다.

* 아 중학생이면 일단 국영수가 기본은 되어야 합니다. (심지어 나중에 코딩만 할 거라도 말입니다.)

anonymouskldpuser의 이미지

재미있어서 하는 거라 장래에 써먹을 곳 까지는 안 알아봤네요.

그리고 해킹을 배우겠다는 이유 중 하나가 바로 코딩을 능수능란하게 할 수 있게 되어서.. 입니다.

Rubypops의 이미지

전공은 밥벌이를 한다는 것입니다.. :)

신중하게 선택해주시길..

루비를 공부하고 사랑하는 프로그래머

anonymouskldpuser의 이미지

저는 컴퓨터 계열로 직업 생각 중인 건 맞습니다만 아직 어리니까 반은 취미로 반은 진지하게 편하게 공부하겠다는 것입니다. (어차피 대학교 가면 더 열심히 공부할 텐데...)

그리고 준비라는 게 하면 할 수록 좋잖아요!

anonymouskldpuser의 이미지

KLDP는 역시 양질의 기술과 인격을 갖춘 엔지니어/해커/프로그래머들이 많군요.

hxploit의 이미지

중학교때부터 혼자 공부해와서 현재는 보안 분야에서 일하고 있는 사람입니다.

오래전부터 이런 류의 질문이 올 때마다 링크하는 블로그가 있습니다.

http://www.myne-us.com/2010/08/from-0x90-to-0x4c454554-journey-into.html

지금은 좀 된 글이긴 하지만 여전히 깔끔합니다. 기초적인 부분만 정리되있긴 합니다만 도움이 될겁니다.
Ruby/Perl 은 굳이 꼭 필요하다고는 하기 힘든 것이라 제외해도 되지만 배우면 나쁠건 없습니다.
(당장 metasploit 스크립트도 ruby 로 되있으니)

일단 저 내용들을 다 공부하면 조금 더 심화된 부분을 공부할 준비는 된 것입니다.
그 뒤의 테크트리는 사실 유동적이고, 정해진 것도 없습니다. 자기가 재밌는 분야를 찾아서 공부하면 됩니다.
서적을 사던, 구글링을 하던 원하는 대로 하면 됩니다. 사실 어느 이상되면 구글링으로만 공부하게 됩니다.

소프트웨어 취약점 관련해서는, https://code.google.com/p/it-sec-catalog/wiki/Exploitation 와 같은 페이지가 있습니다.
사실 취약점 분석이나 또는 신규 취약점 탐색(offensive research) 같은 경우 많은 보안 분야 중에서도 상당히 어려운 분야입니다.
지금 굳이 하실 필요는 없으나 본인이 재미있으면 처음부터 차근차근 공부해나가면 됩니다.

한 명이 어차피 모든 것을 다 할수는 없기 때문에 대략적으로 자신의 분야를 정해서 해야 어느 이상의 깊이로 공부가 가능합니다.
그건 지금은 아니지만 나중에 본인이 원하는대로 하시면 됩니다. 물론 국내 보안업체에 취업하는데 소프트웨어 취약점 찾거나 하는건 필요없습니다.
툴 사용은 어차피 하다보면 필요에 따라 알아서 다 찾아 쓰게 되어 있습니다.

wargame 이나 CTF 등을 찾아서 하시면 공부에 재미도 붙어서 나름대로 도움이 될 수 있습니다.
특히 요즘 CTF 는 정말 다양한 분야에 대해서 모두 어느 정도 잘 알아야 하기 때문에, 목표를 이쪽으로 해서
공부하다보면 추후 어느 보안 분야를 하더라도 꽤 도움이 됩니다.

물론 다 배제하더라도 일단 C 는 기본적으로 알아야 합니다.

anonymouskldpuser의 이미지

이런 좋은 웹사이트를 찾아 주어서 고맙습니다. 열심히 공부하겠습니다.