Jump to content
ТУК НЕ СЕ ПРЕДЛАГАТ ХАКЕРСКИ УСЛУГИ ! ×

Как да стана хакер?


kernel
 Share

Recommended Posts

Защо е нужен този документ?

Eric Steven Raymond Като редактор на "Жаргон-файла" (Jargon File), често получавам по електронната си поща въпроси от ентусиазирани мрежови новаци, питащи: "Как да стана хакер-магьосник?". Достатъчно странно е, че не могат да се намерят никакви FAQ или web-документи в мрежата, които да дават отговор на този въпрос. Така, че ето ви моят.

 

Ако четете копие на този документ off-line, текущата версия на оригинала (на английски език) се намира на адрес http://www.ccil.org/~esr/faqs/hacker-howto.html.

Що е то хакер?

"Жаргон-файл"-а съдържа куп определения на термина "хакер", повечето от които са свързани с техническата компетентност и удоволствието, получавани от решаването на проблеми и преодоляването на прегради. Но ако Вие искате да знаете как да станете хакери, то истински съществени се оказват два аспекта.

Съществува общество, вид култура или споделяна философия, която се състои от опитни програмисти и мрежови чародеи, които водят своята история от времето на първите микрокомпютри с времеделене и от първите експерименти с мрежата ARPAnet. Членовете на това общество слагат началото на термина "хакер". Хакерите направиха Internet. Хакерите направиха операционната система UNIX такава, каквато е сега днес. Хакерите водят Usenet. Благодарение на хакерите съществува World Wide Web. И ако Вие се явявате част от тази култура, ако сте дали своя дял в нея и ако другите членове на това общество знаят кой сте Вие и Ви наричат хакер, то Вие сте хакер.

Хакерският мироглед не се ограничава с културата на програмиста. Има хора приемащи хакерския подход и към други неща като електроника или музика. В действителност можете да ги срещнете и сред висшите кръгове на науката и изкуствата. Софтуерните хакери припознават такива близки по дух хора и също ги наричат хакери, някои дори твърдят, че хакерската природа не зависи от сферата, в която работи хакера. В останалата част на този документ обаче ще се съсредоточим на навиците и похватите на софтуерните хакери, а така също на традицията на културата, породила термина "хакер".

Има и друга група хора, шумно наричащи се хакери, каквито не са. Тези хора (предимно младежи от мъжки пол) пробиват компютърни или телекомуникационни системи. Истинските хакери наричат тези хора "кракери" и не желаят да имат нищо общо с тях. Повечето истинските хакери считат кракерите за лениви, безотговорни и не особено умни. Това, че човек е способен да разчупи система за сигурност не го прави хакер, както и умението Ви да електрифицирате автомобила си не ви прави автомобилен инженер. За нещастие много заблудени журналисти и писатели използват думата "хакер" за определяне на кракери и това действа безкрайно раздразнително на истинските хакери.

Основното различие е в следното: хакерите правят нещата, а кракерите ги развалят.

Ако искате да станете хакер, продължавайте да четете. А ако искате да ставате кракер отивайте да четете news-групата alt.2600 и се пригответе да прекарате от пет до десет години в затвора, когато откриете, че не сте толкова ловки, колкото сте си мислили. Това е всичко, което мога да кажа за кракерите.

Хакерският подход

Хакерите решават проблеми и са съзидатели, те вярват в свободата и доброволната взаимопомощ. За да Ви възприемат като хакер Вие трябва да се държите така, че това да е Вашата собствена позиция. А за да бъде наистина Ваша позиция Вие трябва да вярвате в нея.

Но ако мислите да култивирате у себе си хакерско поведение само за да получите признание в хакерското общество, то Вие пропускате най-важното. Да станете човек, който вярва в подобни неща - това е важно за самия вас, защото ще Ви научи да поддържате стремежа си. Както и, в което и да е изкуство най-ефективния способ да станете майстор е да подражавате на признатите майстори не само интелектуално, но и емоционално.

Така, че ако искате да станете хакери, повтаряйте си следните принципи докато не повярвате в тях:

1. Светът е пълен с пленителни проблеми, които очакват решение.

Да бъдеш хакер е огромно удоволствие, но удоволствие, което изисква огромни усилия. За такива усилия е нужна мотивация. Атлетите-шампиони черпят мотивация от специфичното физическо удоволствие, получавано от довеждането на собственото тяло до съвършенство или от преодоляване на собствените физически предели. Подобно на това, за да бъдете хакери Вие трябва да изпитвате удоволствие от решаването на проблеми, от отказването от своите навици, от тренировките на своя интелект.

Ако не сте такъв тип човек, трябва да станете за да направите от себе си хакер. В противен случай ще забележите, че Вашата хакерска енергия е изчерпана от такива дразнители като секса, парите и успеха в обществото.

(Вие трябва също да развиете у себе си вяра в собствените си способности за обучение. Вяра в това, че дори да не знаете всичко необходимо за решение на проблема, но сте се справили с частичка от него и сте го научили, то вече знаете достатъчно за да решите следващата частичка и така нататък докато всичко не бъде направено.)

2. Никой и никога не трябва да решава един проблем два пъти.

Творческият мозък е ценен и ограничен ресурс. Не трябва да го пилеем за откриване на колелото, когато наоколо има толкова много чудесни нови проблеми.

За да се държите като хакер Вие сте длъжни да вярвате, че времето за размисъл на другите хакери е скъпоценно и се явява морален дълг за Вас да споделите информацията, с която разполагате. Решете някой проблем и след това раздавайте решението си, така че другите хакери да могат да решават нови проблеми вместо непрекъснато да се връщат към старите.

(От Вас не се очаква да вярвате, че сте длъжни да раздавате всички плодове на творчеството си, въпреки, че хакерите, които праят това са сред най-уважаваните от другите хакери. На ценностната система на хакерите няма да противоречи ако Вие продавате плодовете на своето творчество за да си осигурявате храна, подслон и компютри. Напълно приемливо е и ако използвате хакерските си навици за да издържате семейството си и даже за забогатеете от това, стига покрай това да не забравите, че все пак сте хакер.)

  • Like 1
Link to comment
Share on other sites

За да бъдете хакер, сте длъжен да развивате у себе си някои от изброените принципи. Но да следвате само принципа ще Ви направи толкова хакер, колкото и спортист-рекордьор или рок-звезда. За да станете хакер трябва интелект, практика, самоотверженост и тежък труд. Затова Вие трябва да се научите с недоверие да се отнасяте към становищата и с уважение към компетентности от всякакъв вид. Хакерът не позволява позьори да да му губят времето, но те се прекланят пред компетентността - най-вече хакерската компетентност, но компетентността, в каквото и да е заслужава внимание.

Ако боготворите компетентността Вие получавате насладата, развивайки я в себе си. Тежкият труд и преданността към работата ще станат за Вас завлядяваща игра, а не рутина. А това е жизнено необходимо за да станете хакер.
Хакерският мироглед е от значение, но майсторството е многократно по-важно. Позицията не заменя компетентността - съществуват определен набор основни навици, които е необходимо да увладеете преди другите хакери изобщо да помислят да наричат хакер и Вас.
Този базов набор с времето бавно се променя - така, както и технологиите пораждат нови умения и правят старите ненужни. Например доскоро се изискваше програмиране на машинен език и съвсем доскоро не се очакваха познания по HTML. В днешният набор определено се включват следните компоненти:
Научете се да програмирате.
Това разбира се е основно хакерско умение. Ако не знаете никакъв компютърен език бих Ви препоръчал да започнете с езика Python. Той е разработен чудесно, добре е документиран и е доброжелателен за новаци. Не се заблуждавайте, че тъй като е добър за начинаещи той е някаква играчка. Това е много мощен и гъвкав език, много подходящ за болшинството
Знайте, че няма да постигнете майсторско хакерско ниво (или даже дори нивото на добър програмист), ако знаете само един език. Необходимо е да се научите да мислите по проблемите на програмирането въобще, независимо от конкретния език. За да бъдете истински хакери трябва да достигнете ниво, което Ви позволява да научите който и да е нов език за няколко дни, консултирайки се с ръководството му. Това означава да научите няколко много различни езика.
Най-добре от всичко би било да научите всичките четири езика (Python, C, Perl, и LISP). Освен, че са най-важните хакерски езици, те демонстрират много различни подходи за програмиране и всеки от тях ще Ви научи на нещо ценно.
Намерете си някой от вариантите на UNIX в изходен код, научете се да го ползвате и да работите с него.
Unix е операционната система на Интернет. Можете да използвате Интернет и без да сте чували за Unix, но не можете да бъдете интернет-хакер, ако не разбирате Unix. По тази причина днешната хакерска култура се явява силно Unix-концентрирана. (Това не винаги е било така и на някои от хакерите от по-старо поколение това не се нрави съвсем, но симбиозата между Unix и Интернет е толкова силна, че даже силите на Microsoft не са достатъчни за повлияят на това.)
Научете се да използвате World Wide Web и да пишете HTML.
Повечето от нещата, които са създадени от хакерите са невидими - с тях работят фабриките, учрежденията, университетите, но това не се забелязва от не-хакерите. WWW - е обаче едно голямо изключение, гигантска блестяща хакерска играчка, за която дори политиците признават, че променя света. Дори само заради това (а и заради множество други приятни причини) трябва да се научите да работите с Web.
Това не означава, че е нужно да знаете да ползвате браузър (това умеят всички), а трябва да се научите да пишете HTML, езика за оформяне на документите в Web. Ако вие все още не умеете да програмирате, то писането на HTML ще ви обучи на някои полезни привички. Така, че си направете web-страничка.
Но това, че си имате такава ни най-малко няма да Ви доближи до хакер. В WWW е пълно с такива странички. Повечето са безмислена, безполезна тиня. Понякога страхотно и привлекателно оформена тиня, но все пак тиня (по подробно за това виж "HTML ад" - The HTML Hell Page).
За да е стойностна страничката Ви трябва да има "content" - съдържание. Тя трябва да интересна и/или полезна за другите хакери. А това ни води към следващия раздел.
(най-главното и най-традиционното) - това е да пишете програми, които другите хакери считат за забавни или полезни и да раздавате изходните им кодове за използване от цялото хакерско общество.
Свикнали сме да наричаме такава работа "свободно-достъпно програмно обезпечаване" (free software), но това води до объркване много хора, които не разбират какво се има предвид под "свободно-достъпен". Сега се предпочита това да се нарича "отворен изходен код" или "open-source software".
Уважават се и тези, които тестват и коигират програми с отворен код. В този несъвършен свят ние неизбежно затриваме голяма част от времето за разработка в търсене на грешки. Затова, който и да е автор на програма с отворен код ще Ви каже, че най-добрите бета-тестери (които знаят как правилно да опишат симптомите, добре локализират проблемите, способни да коригират) са по-ценни от злато. Един такъв човек може да превърне фазата на тествате от изморителен кошмар в полезно забавяне.
Ако сте новак, намерете програма, която Ви допада и станете неин бета-тестер. Съществува съвсем естествен път от помощта при тестването на програмата, към помощта в откриването на грешки по-нататък в модифицирането и. Вие ще се научите на много неща и ще придобиете добри отношения с хората, които ще Ви помогнат в последствие
Въпреки разпространеният мит не е необходимо да сте компютърен маниак за да сте хакер. Това понякога помага и много хакери са действително маниаци. Това им помага да останат съсредоточени върху наистина важни неща като размишления и хакерство.
Именно по тази причина много хакери с гордост се наричат маниаци, дори с далеч по-грубия термин geek (= куку, кретен, отчужден, човек привързан към компютъра си) - това е способ да декларираш независимост от общоприетите в обществото оценки. Подробна дискусия можете да намерите в The Geek Page.
Ако сте способни в достатъчна степен да се съсредоточите върху хакерството се постигат чудесни резултати и при това си имате личен живот. Днес е доста по-лесно да се постигне това,  когато аз бях новак. Обществото вече е далеч по дружелюбно към техно-маниаците. Вече никой не се съмнява, че хакерите са си съвсем качествени любовници и съпрузи. За последното можете да погледнете Girl's Guide to Geek Guys.
Ако хакерството Ви влече по тази причина - защото нямате личен живот - и това не е лошо. В крайна сметка Вие няма да имате проблем с концентрацията. А личният живот - както е известно може да дойде по-късно.
Още веднъж - за да бъдете хакер трябва да приемете мирогледа на хакера. Има няколко неща, които могат да Ви помогнат в моментите, когато не сте пред компютъра си. Те не заменят хакерството (нищо не го заменя), но много хакери се занимават и с неща, които по някакъв начин са близки с хакерството.
• Четете научна фантастика. Ходете на срещи с любители на фантастиката (това е добър начин да се запознаете с хакери и "прото-хакери").
• Изучавайте Дзен-будизъм или източни бойни изкуства. (Тяхната ментална дисциплина има подходящи сходни черти).
• Изработете у себе си аналитичен музикален слух. Учете се да разбирате специфични видове музика. Научете се да свирите на някакъв музикален инструмент или да пеете грамотно.
• Изработете у себе си умение да разбирате каламбури и игра на думи.
• Научете се да пишете добре на родния си език. (Удивително множество от хакери, включително всички познати ми хакери са качествени писатели.)
Колкото повече от тези неща правите, толкова по-голяма вероятността да придобивате природно хакерски способности. защо точно тези неща не е съвсем ясно, но те са свързани със смесване на навици на лявото и дясното мозъчно полукълбо, а това е важно (хакерите трябва да могат да умеят както да градят стройни логически обяснения, така и от време на време да оценяват проблеми извън нормалната логика).
И накрая няколко неща, които не трябва да правите.
• Не използвайте глупави и грандиозни потребителски имена.
• Не се въвличайте в свади по Usenet (и къде ли още не).
• Не се наричайте "кибер-пънк" и не обръщайте внимание на тези, които го правят.
• Не изпращайте писма или електронна поща с правописни грешки.
Единствената репутация, която ще си създадете, занимавайки се с тези неща ще е за посмешище. А хакерите имат дълга памет и може години да минат докато забравят за това.

  • Like 1
Link to comment
Share on other sites

  • 4 weeks later...

Не искам да съм хакер.

Искам да съм педант (да не се бърка с елемент на велосипеда).

Педантичният подход ме предпазва от дискусия с определени държавни органи.

А и "хакер"-ите не бяха ли системни администратори на една университетска мрежа с име на античен, музикален инструмент?

  • Like 1
Link to comment
Share on other sites

@Avatara erm...кво?

Почти съм сигурен. че изреченията ти имат смисъл само в твоята глава....освен ако не благоволиш да се обосновеш малко по-детайлно.

  • Like 1
Link to comment
Share on other sites

Лесно е да станеш хакер трудната част е да знаеш наистина как работят нещата а не само да гледаш клипче и да повториш същия текст който пишат другите или да направиш същото каквото прави човека във клипа и нещата когато малко се сменят всъшност да се осъзнаеш че нищо неможеш :Д и +1 Nedi

  • Like 2
Link to comment
Share on other sites

Мдааа,

Огромно е желанието да бъдеш "хакер", но рядко възможностите са адекватни. :D

Всъщност в съвременния свят представата за това какво е "хакер" се доближава по-скоро до тази, формирана от  Брюс Стърлинг.
Ако не ме лъже паметта в книгата си "На лов за хакери", той приравнява хакерското движение към това на телефонните фрикери (което според мен е крайно погрешно).
Все пак телефонните фрикери са продукт на американското списание TAP, а не са системни администратори на ARPHANET (тук визирам първоизточника на термина).
За разлика от хакерите телефонните фрикери са младежка партия (Youth International Party), с ясно подчертана лява ориентация (не "гей", а "лява", различно е). :D
Преди години TAP предостави програма за техническа поддръжка (Technical Assistance Program) на партията на Ейби Хофман (Abbie Hoffman, да не се бърка с физиологичен акт, това е просто име), посредством която можеше да се осъществява безплатна комуникация.
Това си беше началото на края, защото после термините "безплатно" и "общодостъпно" се превърнаха в най-големите маркетингови брендове.

Истината е, че дори в момента съществуват доста различни тълкувания на термина "хакер". Причината е, че думата идва от "to hack", а това е доста двусмислен термин. :$

Ако се придържам към жаргона на киберпънка, то да "хакнеш" нещо, означава да внесеш изменения в конкретен програмен код, но това предполага, че би следвало да имате достъп (под една или друга форма) до изходните кодове (да пребъде безумието на отворения код).
От няколко години се появи модна тенденция, не просто да се модифицират изходните кодове, но и да се посочи на автора как това може да бъде избегнато.Да се направи това с поредния скрипт не е кой знае какъв проблем.
Виж ако трябва да се "хакне" изпълним код става доста ... забавно.
За това са нужни дизасемблери, снифъри и пр.. Но дори с тях се изискват много сериозни познания, които съвременните вузове, просто няма как да ви дадат (а публичният internet още по малко).


Но това е само едната страна на въпроса.

Забавно е, че никой и дума не споменава за действащите законови и подзаконови нормативни актове.
Ако да кажем решите да напишете програма, която шифрова SMS-и (примерно), може да се окажете в доста деликатна ситуация ако не сте уведомили за намеренията си ДАНС. Обърнете внимание, на това, че вие създавате своя, а не "хаквате" чужда програма. Сега си помислете, какво ще се случи, ако решите да модифицирате чужд код, без да уведомите автора.

Но в България ще ви се размине сравнително леко, за разлика от САЩ или някоя държава в Южна Америка.
Всъщност за определени занимания могат да ви екстрадират в САЩ и там да полежите във федерален затвор няколко десетилетия. За съжаление вече има няколко такива случаи с български ентусиасти (за съжаление слабо отразени в медиите).

Това, което е важно да знаете е, че независимо какво и как правите трябва да се съобразявате с действащите закони.


Повярвайте, добре е да се придържате към тях, за да може да работите дълго и да натрупате авторитет и познания.

И .....

Много е важно да се научите да четете внимателно. Много внимателно.

Avatara

(склеротизирал старец с лош характер)

 

P.S. Аз лично не одобрявам фразата "Да преоткрием велосипеда.", а още по-малко "Да преоткрием топлата вода.". Както велосипеда, така и водата са нещо доста сложно и малко изучено. Ако не вярвате, проверете как се обработва водата, използвана в "белите стаи". Преориентирането на водните макромолекули (в момента на науката са познати около двеста вида) е доста интригуващ процес. А проектирането на един велосипед си е сериозно инженерно предизвикателство. Написването на една програма, която ще бъде ползвана от много потребители - също, та дори това да е "обикновен" текстови редактор.

 

Edited by Avatara
  • Like 4
Link to comment
Share on other sites

Точно в последните няколко години е толкова лесно да станеш "хакер", че е направо обидно. А относно възможностите, стига да можеш да си напишеш CV-то правилно и да изкараш един CEH и вече имаш работа, така че не мисля, че е толкова трудно.

 

Не мисля, че има смисъл да влагаш толкова внимание на това какво представлява "хакер" от гледна точка на политическа партия или писател, понеже няма да има голям смисъл. По същата логика може да питаш и копач какво представлява квантовата физика, и отговора ще бъде точно толкова точен, колкото отговора на технически некомпетентен мияч/политик/писател относно хакерството.

Честно казано, аз едвам намирам хора имащи по 5 години опит, които могат адекватно да обяснят хакерството, камо ли останалите.

 

Относно модификацията на код, в момента има толкова много информация, че буквално за 2 седмици можеш да се научиш как да декомпилираш и да проверяваш код или съответно да експлоатираш, да кажем buffer overflow на strncpy() като се хоокнеш за процеса през, примерно OllyDB, и почнеш да си следиш рандом пейлоада. Аз лично мога да ти кажа, че преди 10 години нямаше информация освен по задълбаните руски форуми. Ако сега не можеш да намериш такава информация, значи не търсиш правилно.

Нека помогна малко с някоя книга: IDAPro - тук

Освен това има много други ресурси за преглеждане. От доста време не съм търсил, но имам презентация, която ползвах за няколко технически семинара. Не е нищо особено и е на доста елементарно ниво, но може поне да те насочи към различни матеряли.

 

От страна на законите, определено трябва да се знаят, понеже границата е много фина и доста хора прекарват доста време по затворите, понеже не четат достатъчно, но не смятам, че примерът с ДАНС е валиден. Ако криптираш СМСи, ти реално модифицираш трафика на система, която не ти принадлежи. Ти си плащаш, за да ползваш системата по начина, по който е направена и нямаш документ, който ти позволява модификацията, следователно би било редно да има наказателни процедури.

Пак от страна на ДАНС, не мисля че тях толкова ги бърка точно този сценарий. Вярвай ми, точно в момента си имат доста други проблеми.

DLL Reverse Engineering.pdf

Link to comment
Share on other sites

Как да стана хакери всеки може да се опеделя като такъв. Имам приятели който определят CТF игрите като душевни чикий, но аз все още си смятам че това е най-правилния път към развитие на мисленето и уменията които ще те доближат до това да бъдеш хакер. В тях се засяга всяка част от cyber security, по време на ctf може да установиш кое разбираш, кое не, къде трябва да добавиш някакви знания и т.н. И също така можеш да провериш себе си към коя категория на cyber security искаш да се насочиш.

Edited by d3k4z
Link to comment
Share on other sites

Признавам, че независимо от леснодостъпните средства и в момента съществува достатъчно код, който не е толкова лесно да се дезасемблира, да не говорим за сериозен анализ.

Не знам дали някой си спомня, че никой така и не можа да сe прави със Skype (Delphi е много, много специфичен език за програмиране и не случайно иезуитите му отделят толкова внимание). :D

Що се отнася до ДАНС ... просто визирам конкретна наредба и конкретни юридически казуси. В този ред на мисли, не знам други освен ДАНС да разполагат с TEMPEST лаборатория на територията на България. Възможно е да греша.

В друг пост се намекна, че това, за което говоря е тероризъм ...

Недейте така. Аз съм просто един стар мърморко, но не съм краен екстремист. :D

"Цивилните" имат свои критерии и методи на работа, дори да са  структура като "Черната вода".  

В цивилната сфера, служителите работят основно за пари.

Парите (както знаем) са просто средство (инструмент). Целта обаче е нещо различно. 

Основната причина за разпада на "демократичните ценности" на съвременното,  гражданско общество е, че то не може да приеме факта, че кибернетичната война е война на идеи. 

Съвременното гражданско общество е лишено от идеи, което го прави силно уязвимо (най-вече в технологично и икономическо направление).

Мдааа ... Руските форуми бяха нещо хубаво, но ако внимателно следите тях и скандинавските няма как да не сте забелязали, че истински стойностната информация се заличава светкавично. Не е лесно да се намери работещо решение за контрол на динамични обекти в нееднородна среда (примерно). За книги и периодика да не споменавам. В този ред на мисли, има много броеве на годишниците на американските електро и радиоинженери, които не се намират (тези за механика - също).

А руснаците се научиха да се продават скъпо и да се пазарят. От няколко години в софтуерния бранш там има строги правила и като цяло си пазят интересите. В България не е така. Ние се самоизяждаме и много често водим безмислени спорове. Като се замисля дори румънците ни изпревариха.

Качествената информация няма възраст. 

Лично аз предпочитам книжното тяло пред публикациите в internet. Хубаво е когато това, което се чете, е преминало поне три редакции. Някои стари годишници на СУ са много по-интересни от Google (примерно). 

Като се замисля ... скоро не съм виждал качествен учебник по програмиране (не web, a програмиране) от български автор. А вие?

 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.