Протягом багатьох років у діловому світі ігнорували проблему захисту даних, що використовуються на комп'ютерах, проте дії зловмисників змусили визнати захист даних проблемою №1. Коли Банк в Америці, використовуючи корпоративні мережі, втратив 400 тисяч доларів через дії зловмисників, обчислювальні комп'ютерні центри спільно з керівниками компаній почали посилено займатися пошуком рішень проблеми захисту комп'ютерних даних від несанкціонованого доступу через комп'ютерні мережі.

Скрупульозний аналіз можливих порушень безпеки комп'ютерних систем дозволив розробити перелік найважливіших моментів, які необхідно було врахувати розробки системи захисту комп'ютерних даних від нападів зловмисників. Перелік включав:

  • оцінку цінності даних, що у обробці комп'ютері;
  • визначення часу та коштів, які доведеться витратити зловмиснику на «зламування» системи;
  • передбачувану модель дій зловмисника, що атакує комп'ютерну систему;
  • визначення часу та коштів, які доведеться витратити на розробку механізмів захисту комп'ютерної системи.

Крім перерахованого потрібно чітко представляти:

  • професійну підготовку зловмисника;
  • ступінь його поінформованості про комп'ютерну систему - об'єкт його нападу;
  • наявність доступу до системи;
  • механізми, що використовуються для розкриття системи.

Зловмиснику експерти дали ім'я «хакер», яке, на їхню думку, точніше характеризувало рівень професіоналізму подібних зловмисників.

То хто ж такі « хакери»?

Єдиного сприйняття, кого ж таки називати « хакером» у комп'ютерній літературі не склалося. Як правило, хакерам приписується високий рівень професіонала-комп'ютерника, але методи прояву їхнього професіоналізму викликають розбіжності.

На думку одних, хакер – це той, хто зламує комп'ютерний захист, щоб згодом рекомендувати практичні способи поліпшення механізмів їх захисту. На думку інших, – це професіонали найвищого рівня, які злочинно використовують свої знання та досвід. Залишивши морально-етичну сторону діяльності хакерів осторонь, вважатимемо хакерами осіб, які зламують комп'ютерну систему з метою, заволодіти додатковими привілеями та правами доступу у цій конкретній системі. Тобто. хакер може бути для даної комп'ютерної системи зовсім сторонньою особою без будь-яких прав доступу та привілеїв, або ним може бути користувач даної системи, права доступу та привілеї якого обмежені.

За статистикою комп'ютерні злочини скоюються хакерами абсолютно різного професійного рівня. Це можуть бути навіть школярі, які запозичили в Інтернеті спеціалізовану програму для злому з сервера хакерів. Проте, існують і цілі хакерські банди, очолювані висококваліфікованими фахівцями комп'ютерної області.

  • це компетентна людина, яка має знання останніх досягнень у галузі комп'ютерної техніки, програмного забезпечення та пристроїв зв'язку;
  • перед зломом системи хакер озброюється максимально знаннями про цю систему, про її програмне забезпечення, про особливості її адміністраторів;
  • для збору необхідної інформації може використовувати підслуховувальні пристрої та інші технічні та агентурні способи;
  • перевіряє експериментально всі плановані способи злому на створеній моделі з тими ж характеристиками захисту, що і в системі, що зламується;
  • злом системи робить максимально швидко, щоб його неможливо було помітити та вжити заходів щодо усунення, обчислити хакера та місце, де він знаходиться;
  • уникає витончених методів злому, розуміючи, що складність збільшує ймовірність помилки;
  • для скорочення часу злому та уникнення помилок використовує програми, написані заздалегідь, не користується для цього клавіатурою;
  • діє під чужим ім'ям, приховуючи свою адресу у мережі; ретельно продумує, як можна при необхідності відступити, щоб навести на хибний слід або усунути сліди (як варіант, паралельно веде хибну свідомо провальну атаку з іншої адреси, плутаючи сліди в журналі аудиту, не даючи системному адміністратору можливості визначення справжньої атаки та проведення профілактичних дій на майбутнє);
  • часто використовує програмні закладки, які знищують себе, коли їх виявляють, або коли проходить заданий період часу.

Хакерські атаки на захист комп'ютерних систем

Основними компонентами програмного забезпечення комп'ютерних систем є операційні системи, мережне програмне забезпечення, а також системи управління базами даних. Виходячи з цього, прийнято розрізняти три різні рівні спроб злому захисту.

Спроби злому захисту системи управління базами даних (СУБД)

Захист від них не є складною проблемою. Це суворо внутрішньої структурою СУБД і чітким визначенням операцій з її елементами. Основними діями над елементами СУБД є: пошук, заміна, видалення та вставка; інші операції є допоміжними та використовуються рідко. Усе сказане вище полегшує реалізацію захисту СУБД.

Як правило, хакери не атакують СУБД безпосередньо, вони роблять це, використовуючи засоби ОС, захист яких попередньо зламують. Але якщо механізми захисту СУБД не надійні, або СУБД не пройшла ретельне тестування, і в ній ймовірні помилки, хакери можуть зазнати її атаки.

Крім цього, існує два різновиди атак на СУБД, які потребують спеціальних методів захисту. В одному випадку відбувається округлення результатів арифметичних операцій з даними грошового типу в меншу сторону, а отримана різниця в результатах накопичується як сума в певному записі СУБД (наприклад, на особистому рахунку хакера в банку в грошовому форматі, в той час як округлені у бік зменшення грошові суми перебувають у записах інших користувачів банку). В іншому випадку хакер отримує доступ тільки до записів, по полях якої накопичується статистична інформація, і його атака полягає у створенні такого запиту, при виконанні якого статистика збиралася б тільки для одного запису, а не для безлічі записів даного типу.

Спроби злому захисту операційної системи

Від спроб злому незрівнянно складніше, ніж СУБД. Для внутрішньої структури ОС нашого часу властива надзвичайна складність, і реалізація захисту від спроб злому операційної системи ускладнюється рівноцінно. Вважається, що зламати ОС можна лише, створивши архіскладні кошти із залученням надсучасних досягнень у відповідних галузях знань та практики, а хакер має бути супер програмістом.

Насправді ж хакеру досить діагностувати захист конкретної системи, знайти у ній найуразливіші місця і далі діяти через них якомога ефективніше. Причому, чим простіше використовувані засоби злому, тим нижче ймовірність збоїв та помилок атаки. Це особливо злободенно, якщо немає можливості проведення попередньої перевірки алгоритму злому в умовах, близьких до реальних.

Але існують види атак, що дозволяють зламати операційну систему незалежно від її архітектури та конфігурації комп'ютера.

Розкрадання пароля

Щоб «добути» хакеру доводиться:

  • підглядати за введенням пароля користувачем-правовласником;
  • використовувати файл із збереженим паролем;
  • використовувати записник, календар, зворотний бік клавіатури та ін., де може бути записаний пароль;
  • викрасти зовнішній носій із записаним паролем.

Або визначати пароля шляхом підбору:

  • перебрати всі можливі варіанти;
  • оптимізувати перебір варіантів (використовувати особисті дані користувача, враховуючи відомості про наявність еквівалентних паролів; словники найбільш уживаних паролів; аналізувати частоту використання символів тощо).

Перегляд дисків комп'ютерної системи

Хакер намагається переглянути кожен файл на жорстких дисках комп'ютера, і ті файли і каталоги, при описі доступу до яких адміністратором системи були допущені помилки, будуть прочитані. Щоб уникнути викриття, хакер діє від чужого імені, доступного йому в цій комп'ютерній системі.

Аналіз «сміття»

За наявності можливості, які були видалені користувачами, хакер нею скористається, щоб отримати доступ до них (наприклад, до кошиків) з метою виявлення цінної інформації.

Перевищення повноважень

Помилки програмного забезпечення та адміністрування операційної системи дозволяють хакеру перевищити повноваження, надані йому відповідно до чинної політики безпеки, а саме:

  • запускати будь-яку програму як системну або програму користувача з відповідними повноваженнями;
  • підміняти динамічно завантажувані бібліотеки в системних програмах або змінювати шлях до цих бібліотек у змінних середовищах;
  • змінювати код або дані у підсистемі захисту операційної системи.

Відмова в обслуговуванні з метою часткового або повного виведення з ладу операційної системи

  • захоплення ресурсів (програма хакера захоплює велику кількість ресурсів ОС та зациклюється);
  • бомбардування запитами (програма хакера безперервно надсилає операційній системі запити, які для свого виконання потребують великої кількості ресурсів комп'ютерної системи);
  • використання помилок програмного забезпечення чи адміністрування.

За відсутності помилок у програмному забезпеченні та суворому дотриманні адміністратором відповідної політики безпеки наведені види атак виявляться малоефективними. Прийняття додаткових заходів для підвищення безпеки значною мірою залежить від особливостей конкретної операційної системи встановленої на комп'ютері і може знизити ефективність атак хакерів. Але незалежно від вжитих заходів не можна усунути загрозу атак хакерів на 100%, і політика безпеки навіть при порушенні кордонів захисту, створюваних ОС, повинна гарантувати неможливість нанесення відчутного збитку комп'ютерній системі від атак хакерів.

Спроби зламування мережного програмного забезпечення

Рівень СПО легко вразливий з погляду хакерських атак. Канали зв'язку для передачі повідомлень часто не захищені, що дозволяє при дозволеному фізичному доступі до каналу підміняти передані повідомлення своїми.

Найімовірніші види дій хакерів лише на рівні мережного програмного обеспечения:

  • прослуховування сегмента локальної мережі.

Повідомлення, що передаються всередині сегмента мережі, можуть бути прийняті будь-яким комп'ютером, підключеним до нього, і, якщо комп'ютер хакера до сегмента приєднано, то вся інформація, що передається між комп'ютерами цього сегмента, буде видобутком хакера;

  • перехоплення повідомлень на маршрутизаторі.

За наявності привілейованого доступу до маршрутизатора, у хакера з'являється можливість перехоплювати повідомлення, що проходять через нього, а серед цих повідомлень, що особливо цікавлять хакера, з електронною поштою та паролями користувачів;

  • створення хибного маршрутизатора.

Відправляючи до мережі повідомлення спеціальної структури, характерні для маршрутизатора, хакер перемикає маршрутизатор на свій комп'ютер, проте повідомлення, направлені цей маршрутизатор, стають його видобутком;

  • нав'язування повідомлень.

Хакер відправляє в мережу повідомлення, в яких як зворотна мережна адреса вказана мережна адреса комп'ютера хакера. Таким чином, встановлені з'єднання перемикаються на його комп'ютер, і права користувачів цих з'єднань стають правами хакера;

  • відмова у обслуговуванні.

Хакер відправляє у мережу повідомлення особливої ​​структури, їх отримання частково чи повністю порушує працездатність однієї чи кількох комп'ютерних систем.

Для зведення до нуля ефективності атак хакерів на рівні мережевого програмного забезпечення канали зв'язку повинні бути максимально захищені, не даючи можливості мережевого обміну нелегальним користувачам. Деякі способи наведені нижче:

  • максимально можлива мінімізація розмірів мережі, оскільки захистити мережу великих розмірів значно складніше;
  • обмеження фізичного доступу до мережі ззовні, зменшуючи цим можливість несанкціонованого до неї підключення;
  • застосування шифрованих мережевих повідомлень, щоб уникнути загрози їх перехоплення, що виправдовує неминуче зниження продуктивності СПО та збільшення накладних витрат;
  • використання в мережевих повідомленнях цифрового підпису, що повністю унеможливлює нав'язування повідомлень та зменшує загрози відмови в обслуговуванні;
  • використання брандмауерів.

Універсальні правила захисту

Вище було описано у найзагальнішому вигляді найбільш типові методи спроб злому комп'ютерної системи. Але конкретне застосування цих методів може мати свої нюанси, що змушують розробляти додаткові заходи захисту комп'ютерної системи. І все-таки для мінімізації ризику злому системи можна назвати такі загальні правила:

  • ваш професійний рівень має бути, як мінімум, не нижчим, ніж у хакерів. Уважно стежте за останніми розробками безпеки комп'ютерних систем, підписуйтесь на спеціалізовані періодичні видання, що публікують матеріали захисту комп'ютерних систем.
  • при створенні системи захисту виходьте з розумного – потужніша захист вимагає потужніших ресурсів комп'ютерної системи та витрат за її використання;
  • інформація про принципи роботи вашої системи захисту повинна зберігатися в суворому секреті, щоб уникнути стати легкою здобиччю хакерів;
  • мінімізуйте, наскільки це можливо, розміри комп'ютерної мережі та її підключення до Інтернету;
  • вирішуючи питання про купівлю нового програмного забезпечення, поцікавтеся, чи немає інформації на серверах хакерів;
  • приміщення для своїх серверів ставте на охорону та організуйте доступ до них тільки через мережу;
  • всі повідомлення, що передаються не захищеними каналами зв'язку, повинні бути зашифровані і мати цифровий підпис;
  • якщо захищена мережа з'єднана з незахищеною, при надсиланні повідомлень захищеною мережею користуйтеся брандмауером, шифруванням повідомлень і наявністю в них цифрового підпису;
  • використовуйте аудит мережі, переглядаючи журнал аудиту не рідше одного разу на добу;
  • якщо кількість подій у журналі підозріло велика, проаналізуйте чи не пов'язана поява нових записів зі спробами злому комп'ютерної системи;
  • тримайте під контролем цілісність програмного забезпечення та появу програмних закладок;
  • заведіть паперовий журнал для реєстрації всіх змін безпекової політики і постійно стежте, щоб не було різниці з тією політикою, що реально прийнята в системі. Такий аналіз допоможе виявити використання програмної закладки в комп'ютерну систему;
  • використовуйте лише захищені операційні системи
  • створіть пастки для хакерів, наприклад, файл на диску, ім'я якого може здатися хакеру привабливим, але який звичайними засобами прочитати не можна. Зафіксоване успішне звернення до нього буде сигналом впровадження у комп'ютерну систему програмної закладки;
  • Візьміть за правило тестування комп'ютерної системи спеціальними програмами, наприклад SATAN.

Для поняття хакер характерні два визначення, одне з яких є найпопулярнішим і від цього правдивішим. Для більшості людей хакером є зловмисник, який намагається тим чи іншим способом дізнатися про конфіденційну інформацію, що зберігається на персональному комп'ютері, викликати збій у роботі системи або просто завантажити вірус. Для таких людей характерне інше визначення, а саме «крекери» – люди, які зламують комп'ютер. Як приклад можна розглядати те, що людина, здатна зламати систему безпеки комп'ютера, не робить його хакером, по суті те саме, що і вміння розкривати автомобілі, не робить його автомобільним майстром. Інше визначення слова хакер - програмісти, які по суті створили інтернет, операційну систему Unix, а саме те, чим вона є сьогодні, вони забезпечують роботу World Wide Web. У результаті одне слово має два різних визначення, основне різницю між якими і те, що хакери будують речі, а крекери їх ламають.

Як стати хакером

Виходить, що люди, які намагаються стати хакерами можуть або обманювати і красти інформацію в інших людей, або вони дійсно намагаються стати програмістом, який добре розуміється на своєму роді діяльності, допомагати іншим людям та ін. Бути саме таким хакером - безперечно задоволення, тільки воно вимагає маси зусиль. Такі люди отримують задоволення від розв'язання різноманітних завдань, які постають на шляху перед ними, від відточування своїх навичок до досконалості тощо. В іншому випадку, якщо людина не бажає самовдосконалюватись саме таким чином, то, швидше за все, їй властиве саме обивательське визначення цього терміна.

Зрозуміло, що людині, щоб стати хоча б «крекером», будуть потрібні певні знання в галузі автоматизації інформаційних процесів, програмування на основних мовах, знання інформаційної безпеки та багато інших. Не варто забувати про те, що якщо ви не здатні мислити логічно або вам просто не подобається вирішувати складні завдання, які постають на вашому шляху, то краще відмовитися від витівки стати хакером, так як цей вид діяльності вимагає в основному саме наявність логічного мислення, а вже потім посидючість та інші риси характеру. Іноді може здатися, що те, чим займаються хакер - монотонна і нудна робота, саме у зв'язку з цим людина, яка не має посидючості, навряд чи зможе стати хакером.

Хакер - це людина нового покоління, можна навіть сказати, нова галузь еволюційного розвитку людини. Грамотному хакеру в наш час підвладно ВСІ, від виправлення двійки по ЄДІ сусіду Васю Пупкіну, до злому банківського рахунку.

Хакери. До них по-різному ставляться, але найчастіше з повагою чи навіть страхом. До справи рук легендарних хакерів відносять все нові гучні справи - "...хакер Х повів сто тисяч доларів з великого банку, ...хакер Х незаконно заволодів секретними документами, що оцінюються в суму кілька мільйонів доларів, ...команда хакерів X створила і поширила в Інтернеті новий вірус, що дозволяє отримувати повний доступ до зараженого вузла чи комп'ютера.

Такими історіями можна злякати не лише дітей. Хакерів дійсно варто боятися - вони всемогутні, принаймні в Інтернеті.

Яка людина не мріяла стати хакером, ближче познайомившись з Інтернет? Заробити, не відходячи від свого комп'ютера, здобути заслужену повагу. Це далеко не повний список можливостей, які чекають на успішного хакера.
Хакери бувають поганими та добрими. Погані хакери зазвичай займаються дрібним хуліганством, а хороших хакерів хакерське ремесло - передусім стиль життя.

Хакер (від англ. hack - розрубати) - надзвичайно кваліфікований ІТ-фахівець, людина, яка розуміє найглибші роботи комп'ютерних систем. Спочатку хакерами називали програмістів, які виправляли помилки в програмному забезпеченні будь-яким швидким і далеко не завжди елегантним (у контексті використовуваних у програмі стилю програмування та її загальної структури, дизайну) або професійним способом; такі правки асоціювалися з «незграбною роботою» через їх грубості, звідси і походить назва «хакер». Зараз хакерів дуже часто плутають з комп'ютерними зломщиками - крекерами (від англ. crack - ламаючий) - таке вживання слова «хакер» невірно. про те, де і які в нього проломи у захисті, і з крекерами немає спільних справ.


Хакерами називають, наприклад, Лінуса Торвальдса, Річарда Столлмана, Ларрі Волла, Дональда Кнута, Бйорн Страуструпа, Еріка Реймонда та інших творців відкритих систем світового рівня. У Росії її яскравим прикладом хакера є Кріс Касперски.

Іноді цей термін застосовують для позначення фахівців взагалі - у тому контексті, що вони мають дуже детальні знання в будь-яких питаннях, або мають досить нестандартне і конструктивне мислення. З моменту появи цього слова у формі комп'ютерного терміна (що відбувся у 1960-ті роки), у нього з'являлися нові, часто різні значення.
Хакер (спочатку - хто-небудь, що робить меблі за допомогою сокири):

Людина, що любить дослідження подробиць (деталей) програмованих систем, вивчення питання підвищення їх можливостей, на противагу більшості користувачів, які воліють обмежуватися вивченням необхідного мінімуму. RFC 1983 посилює це визначення наступним чином: «Людина, яка насолоджується досконалим розумінням внутрішніх дій систем, комп'ютерів та комп'ютерних мереж зокрема».
Хтось програмує з ентузіазмом (навіть одержимий), або хто любить програмувати, а не просто теоретизувати про програмування.
Людина, здатна цінувати і розуміти хакерські цінності.
Людина, яка сильна у швидкому програмуванні.
Експерт по відношенню до певної комп'ютерної програми, або хтось часто працює з нею - приклад: "хакер Unix". (Визначення з першого по п'яте - взаємопов'язані, тому одна людина може потрапляти під кілька з них.)
Експерт чи ентузіаст будь-якого роду. Хтось може вважатися «хакером астрономії», наприклад.
Хтось любить інтелектуальні випробування, які полягають у творчому подоланні чи обході обмежень.
Високопрофесійний і цікавий програміст (адміністратор або ін.) вирізняється оригінальним мисленням.
У ранніх значеннях, в комп'ютерній сфері, "хакерами" називали програмістів з нижчою кваліфікацією, які писали програми з'єднуючи разом готові " шматки " програм інших програмістів, що призводило до збільшення обсягів та зниження швидкодії програм. Процесори тоді були "тихоходами" в порівнянні з сучасними, а HDD об'ємом 4,7 Гб був "крутим" для ПК. І було б не коректно говорити про те, що хакери виправляли помилки в чужих програмах.

Виникнення хакерської культури тісно пов'язане з групами користувача міні-комп'ютерів PDP і ранніх мікрокомп'ютерів.

Останнім часом слово «хакер» має менш загальне визначення - цим терміном називають всіх мережевих зломщиків, творців комп'ютерних вірусів та інших комп'ютерних злочинців, таких як кардери, крекери, скрипт-кідді. Багато комп'ютерних зломщиків по праву можуть називатися хакерами, тому що дійсно відповідають усім (або майже всім) перерахованим вище визначенням слова «хакер». Хоча у кожному окремому випадку слід розуміти, у якому сенсі використовується слово «хакер» - у сенсі «знавець» чи «зломщик».

У Росії, Європі та Америці злом комп'ютерів, знищення інформації, створення та поширення комп'ютерних вірусів та шкідливих програм переслідується законом. Злісні зломщики згідно з міжнародними законами боротьби з кіберзлочинністю підлягають екстрадиції подібно до військових злочинців.


Незважаючи на історичну неправильність, що відзначається Файлом Жаргона, нині найчастішим є вживання слова саме в останньому значенні – «комп'ютерний зловмисник». Більше того, в кінофільмах хакер зазвичай подається як людина, яка здатна відразу «зламати» будь-яку систему, що насправді неможливо в принципі. Наприклад, у фільмі "Пароль "Риба-меч"" програміст (якого грає Х'ю Джекман) зламує шифр Вернама - єдину з існуючих систем шифрування, для якої теоретично доведена абсолютна криптографічна стійкість.
Цінності хакерівУ середовищі хакерів прийнято цінувати свій час та інших хакерів («не винаходити велосипед»), що, зокрема, передбачає необхідність ділитися своїми досягненнями, створюючи вільні та/або відкриті програми.
Соціокультурні аспектиПерсонажі-хакери досить поширені у науковій фантастиці, особливо у жанрі кіберпанк. У цьому контексті хакери зазвичай є протагоністами, які борються з пригнічуючими структурами, якими переважно є транснаціональні корпорації. Боротьба зазвичай йде за свободу та доступ до інформації. Часто у подібній боротьбі звучать комуністичні чи анархічні гасла.

Брюс Стірлінг у своїй роботі «Полювання на хакерів» зводить хакерський рух до руху телефонних фрикерів, який сформувався навколо американського журналу TAP, який спочатку належав молодіжній партії йіпі (Youth International Party), яка явно співчувала комуністам. Журнал TAP являв собою технічну програму підтримки (Technical Assistance Program) партії Еббі Хоффмана (Abbie Hoffman), яка допомагає неформалам безкоштовно спілкуватися міжгородом і здійснювати політичні зміни у своїй країні, часом несанкціоновані владою.
Історичні причини існування відмінностей у значеннях слова «хакер»Значення слова «хакер» у початковому його розумінні, ймовірно, виникло в стінах MIT у 1960-х задовго до того, як комп'ютери стали широко поширеними. Тоді воно було частиною місцевого сленгу і могло позначати просте, але грубе вирішення будь-якої проблеми - страшенно хитру витівку студентів (зазвичай автора і називали хакером). До того часу слова hack і hacker використовувалися з різних приводів безвідносно до комп'ютерної техніки взагалі.

Спочатку з'явилося жаргонне слово "to hack" (рубати, різати). Воно означало процес внесення змін «на льоту» до своєї чи чужої програми (передбачалося, що є вихідні тексти програми). Віддієслівне іменник «hack» означало результати такої зміни. Дуже корисною та гідною справою вважалося не просто повідомити автора програми про помилку, а одразу запропонувати йому такий хак, який її виправляє. Слово «хакер» відбулося саме звідси.

Хак, проте, який завжди мав на меті виправлення помилок - він міг змінювати поведінку програми всупереч волі її автора. Саме подібні скандальні інциденти, в основному, і ставали оприлюдненими, а розуміння хакерства як активного зворотного зв'язку між авторами та користувачами програм ніколи журналістів не цікавило. Потім настала епоха закритого програмного коду, вихідні тексти багатьох програм стали недоступними, і позитивна роль хакерства почала сходити нанівець - величезні витрати часу на хак закритого коду могли бути виправдані тільки дуже сильною мотивацією - такою, як бажання заробити гроші або скандальну популярність.

В результаті з'явилося нове, спотворене розуміння слова «хакер»: воно означає зловмисника, який використовує великі комп'ютерні знання для здійснення несанкціонованих, іноді шкідливих дій у комп'ютері - зламування комп'ютерів, написання та розповсюдження комп'ютерних вірусів. Вперше у цьому значенні слово «хакер» було вжито Кліффордом Столлом у його книзі «Яйце зозулі», яке популяризації чимало сприяв голлівудський фільм «Хакери». У подібному комп'ютерному сленгу слова «хак», «хакати» зазвичай ставляться до злому захисту комп'ютерних мереж, веб-серверів тощо.

Відлунням негативного сприйняття поняття «хакер» є слово «кулхацкер» (від англ. слів cool hacker), що набуло поширення у вітчизняному навколокомп'ютерному середовищі практично зі зростанням популярності вихідного слова. Цим терміном зазвичай називають дилетанта, який намагається бути схожим на професіонала хоча б зовні - за допомогою вживання нібито «професійних» хакерських термінів та жаргону, використання «типу хакерських» програм без спроб розібратися в їхній роботі тощо. Назва «кулхацкер» іронізує над тим , Що, нібито, така людина, вважаючи себе крутим хакером (англ. cool hacker), настільки безграмотний, що навіть не може правильно прочитати англійською те, як він себе називає. В англомовному середовищі такі люди отримали назву «скрипткідді».

Деякі особи, відомі як поборники вільного та відкритого програмного забезпечення - наприклад, Річард Столлмен - закликають до використання слова «хакер» тільки в первісному розумінні.
"Глайдер", неофіційний символ руху хакерів

Докладні пояснення терміна у його первісному розумінні наведено у статті Еріка Реймонда «Як стати хакером». Також Ерік Реймонд запропонував у жовтні 2003 року емблему для хакерської спільноти – символ «глайдера» (glider) із гри «Життя». Оскільки спільнота хакерів немає єдиного центру чи офіційної структури, запропонований символ не можна вважати офіційним символом хакерського руху. З цих причин неможливо судити про поширеність цієї символіки серед хакерів - хоча цілком імовірно, що якась частина хакерського співтовариства прийняла її.
Відомі людиВідомі хакери (у первісному значенні слова)
Лінус Торвальдс, творець ядра Linux

Лінус Торвальдс – творець відкритого ядра Linux
Ларрі Уолл - творець мови та системи програмування Perl
Річард Столлмен – засновник концепції вільного програмного забезпечення
Джеф Раскін
Ерік Реймонд засновник Open Source Initiative

Відомі зломщики

Роберт Морріс – автор Червя Морріса 1988 року. (Насправді хробак Морріса був лабораторним досвідом, тому зломщиком його можна вважати умовно.)
Адріан Ламо - відомий зломом Yahoo, Citigroup, Bank of America та Cingular.
Джонатан Джозеф Джеймс – американський хакер, став першим неповнолітнім, засудженим за хакерство.
Джон Дрейпер – один із перших хакерів в історії комп'ютерного світу.
Марк Далтон – автор Love Mail.

Відомі хакери-письменники

Перш ніж приступити до практики, я хочу "завантажити" вашу голову невеликою теорією. А саме: перш ніж читати книгу, ви зобов'язані знати, хто такий хакер у моєму розумінні. Якщо ви матимете на увазі одне, а я інше, то ми не зможемо зрозуміти одне одного.

У світі повно питань, на які більшість людей не знають правильної відповіді. Мало того, люди використовують безліч слів, навіть не здогадуючись про їхнє справжнє значення. Наприклад, багато хто сильно помиляється в розумінні терміна "хакер". Однак кожен має право вважати свою думку найбільш правильною. І я не стверджуватиму, що саме моя думка єдина вірна, але вона відштовхується від дійсно коректного і правильного поняття.

Перш ніж почати обговорювати те, що відомо всім, я маю піти в історію і згадати, як усе починалося. А починалося все ще тоді, коли не було навіть міжнародної мережі Інтернет.

Поняття "хакер" зародилося, коли тільки починала поширюватися перша мережа АРРАпеГ Тоді це поняття означало людину, яка добре знається на комп'ютерах. Деякі навіть мали на увазі під хакером людину, схиблену на комп'ютерах. Поняття асоціювали з вільним комп'ютерником, людиною, яка прагне свободи у всьому, що стосувалося його улюбленої "іграшки". Саме завдяки цьому прагненню та прагненню вільного обміну інформацією і почався такий бурхливий розвиток всесвітньої мережі. Саме хакери допомогли розвитку Інтернету та створили FIDO. Завдяки їм з'явилися безкоштовні UNIX-подібні системи з відкритим кодом, на яких зараз працює велика кількість серверів.

У ті часи ще не було вірусів, і не запровадилася практика зламування мереж чи окремих комп'ютерів. Образ хакера-зломщика з'явився трохи згодом. Але це лише образ. Справжні хакери ніколи не мали жодного відношення до зламів, а якщо хакер спрямовував свої дії на руйнування, то це не віталося віртуальною спільнотою.

Справжній хакер – це творець, а не руйнівник. Оскільки творців виявилося більше, ніж руйнівників, то справжні хакери виділили тих, хто займається зломом як окрему групу, і назвали їх крекерами (зломщиками) або просто вандалами. І хакери, і хакери є геніями віртуального світу. І ті, й інші борються за свободу доступу до інформації. Але тільки крекери зламують сайти, закриті бази даних та інші джерела інформації. Якщо крекер робить злом виключно заради свободи інформації, то це ще можна пробачити, але якщо це робиться заради власної наживи, заради грошей чи хвилинної слави, то таку людину можна назвати лише злочинцем (ким вона за законом і є!).

Як бачите, хакер – це просто геній. Усі, хто приписує цим людям вандалізм, дуже помиляються. Справжні хакери ніколи не використовують свої знання на шкоду іншим.

Тепер давайте розберемося, як стати справжнім хакером. Це обговорення допоможе вам більше дізнатися про цих людей.

1. Ви повинні знати свій комп'ютер та навчитися ефективно ним керувати. Якщо ви ще й знатимете в ньому кожну залізку, то це тільки додасть до вашої оцінки по "хакерству" великий жирний плюс.

Що я маю на увазі під умінням ефективно керувати своїм комп'ютером? Це означає знати всі можливі способи кожної дії та в кожній ситуації вміти використовувати найоптимальніший. Зокрема, ви повинні навчитися користуватися "гарячими" клавішами і не смикати мишу з будь-якої дрібниці. Натискання клавіш виконується швидше, ніж будь-яке, навіть маленьке, переміщення миші. Просто привчіть себе до цього, і ви побачите всі принади роботи з клавіатурою. Особисто я використовую мишку дуже рідко, а намагаюся завжди використовувати клавіатуру.

Невеликий приклад на цю тему. Мій начальник завжди копіює та вставляє з буфера за допомогою кнопок на панелі інструментів або команд контекстного меню, яке з'являється при натисканні правою кнопкою миші. Але якщо ви робите так само, то, напевно, знаєте, що не скрізь є кнопки Копіювати, Вставити або такі ж пункти у контекстному меню. У разі мій начальник набирає текст вручну. Адже можна було б скористатися копіюванням/вставкою за допомогою гарячих клавіш або які є досить універсальними і присутні практично у всіх сучасних додатках.

2. Ви повинні вивчати все, що вам цікаво про комп'ютери. Якщо вас цікавить графіка, то ви повинні вивчити найкращі графічні пакети, навчитися малювати в них будь-які сцени та створювати найскладніші світи. Якщо вас цікавлять мережі, намагайтеся дізнатися про них все. Якщо ви вважаєте, що вже знаєте все, то купіть книгу по цій темі товстіший і зрозумієте, що сильно помилялися. Комп'ютери - це така річ, у якій неможливо знати все!

Хакери - це, перш за все, професіонали у якійсь справі. І тут навіть не обов'язково має бути комп'ютер. Хакером можна стати в будь-якій області, але я розглядатиму тільки комп'ютерних хакерів.

3. Бажано вміти програмувати. Будь-який хакер повинен знати як мінімум одну мову програмування. А краще знати навіть кілька мов. Особисто я рекомендую всім вивчити для початку Delphi. Він досить простий, швидкий, ефективний, а головне, це дуже сильна мова. Але це не означає, що не треба знати інших мов. Ви можете навчитися програмувати будь-чим, навіть мовою Basic (використовувати його не раджу, але знати не завадило б).

Хоча я не дуже люблю Visual Basic за його обмеженість, незручності та суцільні недоліки, я бачив кілька чудових програм, які були написані саме цією мовою. Дивлячись на них, відразу хочеться назвати їх автора Хакером, бо це справді віртуозна та бездоганна робота. Створення з нічого чогось чудового і є мистецтво хакерства.

Хакер – це творець, людина, яка щось створює. Найчастіше це стосується коду, але можна створювати і графіку, і музику. Все це теж стосується хакерського мистецтва. Але навіть якщо ви займаєтеся комп'ютерною музикою, знання програмування підвищить ваш рівень. Наразі створювати свої програми стало вже не так складно, як раніше. За допомогою Delphi можна створювати прості утиліти за дуже короткий час. Так що не полінуйтеся та вивчіть програмування. А я впродовж усієї книги показуватиму те, що необхідно знати програмісту-хакеру, і в тому числі безліч цікавих прийомів та прикладів.

4. Не гальмуй прогрес. Хакери завжди виборювали свободу інформації. Якщо ви хочете бути хакером, то теж маєте допомагати іншим. Хакери повинні сприяти прогресу. Деякі роблять це через написання програм із відкритим кодом, а хтось просто ділиться своїми знаннями.

Відкрита інформація не означає, що ви не можете заробляти гроші. Це ніколи не заборонялося, тому що хакери теж люди і теж хочуть їсти і повинні утримувати свою родину. Але гроші не повинні бути головними у вашому житті. Найголовніше – це творення, процес створення. Ось тут проявляється ще одна відмінність хакерів від крекерів – хакери "створюють", а крекери "знищують" інформацію. Якщо ви написали якусь унікальну жартівливу програму, це вас робить хакером. Але якщо ви написали вірус, який знищує диск, то це вас робить крекером, я навіть сказав би, "злочинцем".

У боротьбі за свободу інформації може застосовуватися навіть зламування, але тільки не в руйнівних цілях. Ви можете зламати якусь програму, щоб подивитися, як вона працює, але не прибирати з неї систем захисту. Потрібно поважати працю інших програмістів, бо захист програм – це їхній хліб. Якщо в програмах не буде захисту, то програмісту не буде на що їсти.

Уявіть собі ситуацію, якби ви вкрали телевізор. Це була б крадіжка і переслідувалася згідно із законом. Багато людей це розуміють і не йдуть на злочини через побоювання покарання. Чому ж тоді крекери спокійно ламають програми, не побоюючись закону? Адже це теж злодійство. Особисто я прирівнюю злам програми до крадіжки телевізора з полиці магазину і вважаю це одним і тим же.

5. Не вигадуй велосипед. Тут знову діє творча функція хакерів. Вони повинні стояти дома і мають ділитися своїми знаннями. Наприклад, ви написали якийсь унікальний код, поділіться ним з іншими, щоб людям не довелося створювати те саме. Ви можете не видавати всі секрети, але маєте допомагати іншим.

Ну а якщо до вас потрапив код іншої людини, то не соромтеся його використовувати (за його згодою!). Не вигадуйте те, що вже зроблено іншими та обкатано користувачами. Якщо кожен створюватиме колесо, то ніхто й ніколи не створить віз.

6. Хакери – не просто окремі особистості, а ціла культура. Але це не означає, що всі хакери одягаються однаково і виглядають як китайці - все одно обличчя. Кожен із них - це окремий індивід і не схожий на інших. Не треба копіювати іншу людину. Те, що ви вдало скопіюєте когось, не зробить вас просунутим хакером. Тільки ваша індивідуальність може зробити вам ім'я.

Якщо вас знають у якихось колах, це вважається дуже почесним. Хакери - це люди, які здобувають собі славу своїми знаннями та добрими справами. Тому будь-якого хакера мають знати.

Як вам дізнатися, чи ви є хакером чи ні? Дуже просто: якщо про вас говорять як про хакера, то ви є хакер. Шкода, що такого добитися дуже складно, бо більшість вважає хакерами хакерів. Тому, щоб про вас заговорили, як про хакера, треба щось зламати. Але це неправильно, і не треба піддаватися на цю спокусу. Намагайтеся тримати себе в рамках і здобути славу тільки добрими справами. Це набагато складніше, але що вдієш. Ніхто не казав, що буде просто.

Дехто вважає, що правильно треба вимовляти "хекер", а не "хакер". Це так, але лише для англійської мови. У нас в країні воно обрусіло і стало "хакером". Ми - російські люди, і давайте будемо любити свою мову і дотримуватися її правил.

Тут же виникає питання: Чому ж автор відносить до хакерського мистецтва написання жартівливих і мережевих програм? Спробую відповісти на це питання. По-перше, хакери завжди намагалися довести свою силу і знання методом написання будь-яких цікавих, веселих програм. я не відношу віруси, тому що вони несуть у собі руйнування, хоча теж бувають із родзинкою та гумором. Зате прості та безневинні жарти завжди цінувалися у вузьких колах. Не секрет, що багато хакерів мають гарне почуття гумору, і він мимоволі шукає свого втілення.

Ну а мережеве програмування нероздільне з поняттям хакер із самого його народження. Хакери набули поширення завдяки мережі, розумінню її функціонування та великому внеску у розвиток Інтернету.

Та й останнє. Я вже сказав, що будь-який хакер повинен вміти програмувати якоюсь мовою програмування. Деякі свідомо вважають, що якщо людина хакер, то вона повинна знати та вміти програмувати мовою асемблера. Це негаразд. Знання асемблера бажане, але не обов'язково. Я люблю Delphi, і це дозволяє мені зробити все, що я захочу. А головне, що я можу зробити це швидко та якісно.

Я за освітою економіст-менеджер і 6 років провчився в інституті цієї спеціальності. Але навіть до цього я знав, що замовник завжди правий.

Чомусь у комп'ютерній області намагаються позбутися цього поняття.

Наприклад, Microsoft наголошує на програмістів, намагаючись навчити їх писати певні програми, не пояснюючи, навіщо це потрібно користувачам. Багато хто тупо дотримується цих рекомендацій і не замислюється про необхідність того, що вони роблять.

Тут же наведу найпростіший приклад. Зараз всі програмісти вставляють у свої продукти підтримку XML, і при цьому ніхто з них не думає про необхідність цього. Адже не всім користувачам цей формат потрібен, і не у всіх програмах він потрібний. Дотримання рекомендацій Microsoft не означає правильність дій, тому що замовник не Білл Гейтс, а ваш споживач. Тому треба завжди робити те, що вимагає кінцевий юзер.

Я взагалі рекомендую не звертати уваги на корпорацію Microsoft, тому що вважаю її лише гальмом прогресу. І це також можна довести на прикладі. Скільки технологій доступу до даних вигадала MS? Просто дивуєшся: DAO, RDO, ODBC, ADO, ADO.NET, і це ще не повний список. Корпорація MS регулярно викидає ринку щось нове, але при цьому сама цим не користується. З появою нової технології всі програмісти кидаються переробляти свої програми під новий стандарт й у результаті витрачають величезні ресурси постійні переробки. Таким чином, конкуренти сильно гальмують, a MS рухається вперед, тому що не слідує своїм власним рекомендаціям і нічого не переробляє. Якщо програма під час створення використовувала доступу до даних DАО, можна спокійно залишити її працювати через і переробляти на

ADO, тому що користувач все одно, яким чином програма отримує дані з бази, головне, щоб дані були.

Програмісти та хакери нав'язують іншим свою думку про улюблену мову програмування як про єдино прийнятну, і роблять це зазвичай успішно, тому що замовник дуже часто нічого не розуміє у програмуванні. Насправді замовнику все одно, якою мовою ви напишете програму, його цікавлять тільки терміни і якість. Особисто я можу забезпечити мінімальні терміни написання програми разом із гарною якістю, тільки працюючи на Delphi. Таку ж якість на VC++ я (та й будь-який інший програміст) зможу забезпечити лише значно більші терміни.

Ось коли замовник вимагає мінімальний розмір або найвищу швидкість роботи програми, тоді я беруся за ASM і С. Але це буває дуже рідко, тому що зараз носії інформації вже практично не мають недоліків у розмірах, і комп'ютери працюють у мільйони разів швидше за перших своїх предків. Таким чином, розмір та швидкість програми вже не є критичними, і на перший план ставиться швидкість та якість виконання замовлення.

Отже, на цій діловій ноті ми закінчимо вступну лекцію і перейдемо до практичних вправ з військового мистецтва, де найчастіше головне - скритність і перемога мінімальними силами.

З чого слід починати, якщо з'явилося бажання навчитися наказувати програмними кодами та криптографічними пастками? Як стають хакерами? Адже вони здатні без особливих зусиль проникнути в чужий комп'ютер, попутно зламавши кілька паролів. Немає нічого дивного в бажанні стати хакером, адже кожен хоч раз хотів подивитися чужу пошту чи обліковий запис.

Хто такі хакери?

Отже, як стають хакерами? Насамперед потрібно зрозуміти, що мається на увазі під цим терміном. Слід зазначити, що хакери нічого спільного не мають з різного роду зловмисниками, які промишляють крадіжкою грошей з банківських рахунків і атакують різні ресурси для того, щоб заблокувати до них доступ користувачів. Звісно, ​​сучасні комп'ютерні умільці втратили статус IT-фахівця найвищої кваліфікації. У зв'язку з останніми подіями вони стали скористатися поганою репутацією у простих обивателів.

Адже раніше за цим терміном ховалися справжні комп'ютерні генії, які були здатні виправляти коди в програмах, ґрунтуючись на власних нестандартних алгоритмах. Тому, поставивши питання про те, як стають хакерами, слід усвідомити ті цілі, яких необхідно буде досягати, оволодівши цією не зовсім простою і рідкісною професією. Слід врахувати, що у сучасному етапі є різного роду обмеження у законах. І ігнорувати їх не можна, оскільки це спричинить відповідальність. До того ж шахрайство у сфері програмного забезпечення вже є причиною великої кількості скандальних історій. І головними героями в них є саме хакери, які, однак, можуть претендувати лише на лаври злодюжок чужих грошових коштів та секретів.

Необхідне вивчення мов програмування

Ви хочете ще відповісти собі на питання про те, як стають хакерами? Тоді слід розуміти, що без відповідної підготовки нічого досягти не вдасться. Кар'єру шановного експерта у сфері комп'ютерних технологій та програм слід розпочинати з процесу вивчення мов програмування. На етапі їх є досить багато. При цьому слід зрозуміти, що є такі мови, які дають змогу спілкуватися безпосередньо з персональними комп'ютерами. З їхньою допомогою можна шукати рішення різноманітних завдань. Для того, щоб створити автономні програми, застосовуються сучасні інструменти. При цьому програмування в мережі є окремою галуззю програмних кодів із командами, які дозволять структурувати документацію. З їх допомогою також можна адмініструвати різні процеси в Інтернеті.

Намагаючись розібратися, хто такий хакер, слід зазначити, що є ще одна категорія мов. Йдеться про механізми проектування різноманітних програмних платформ у компактних пристроях (мобільних телефонах). У зв'язку з цим, роблячи вибір на користь певної сфери діяльності, потрібно зробити вибір відповідної мови програмування. Саме на ньому і треба зосередити найбільшу увагу.

Навіть прості інструкції потребують знань

Природно, щоб зламати електронну пошту, на етапі можна скористатися покроковими інструкціями. Однак вони не дозволять зрозуміти хто такий хакер. Та й принципи роботи різних програм, а також тонкощі передачі даних в Інтернеті все одно потрібно вивчити. У зв'язку з цим слід спочатку спробувати вивчити термінологію, характерну серед хакерів і програмістів. Саме за допомогою специфічних термінів можна спілкуватися з комп'ютерними фахівцями, не побоюючись дилетантів, які не мають достатніх знань для розуміння особливої ​​мови.

Необхідно вивчати операційні системи

Як стати хакером? Уроки, за рахунок яких можна вивчити цю сферу діяльності, зажадають досить багато часу, сил та бажання. Що ще потрібно, крім вивчення термінології та мови програмування? Слід навчитися читати операційні системи. Хакерським сімейством вважається Unix/Linux. Досить важливою особливістю Unixes є відкритість коду. Можна читати, яким чином було написано операційну систему. Є можливість докладного її вивчення. Також можна зробити спроби щодо зміни чогось. Крім того, Unix/Linux орієнтується на Інтернет.

Потрібно вивчення Інтернету та принципів написання скриптів

Щоб стати хакером, необхідно розібратися, як слід використовувати Всесвітню павутину. Також слід розуміти принципи написання HTML. Web – серйозний виняток, велика іграшка для хакерів. Як було сказано політиками, Інтернет здатний змінити світ. І лише з цієї причини з ним потрібно навчитися працювати.

У тому випадку, якщо мова програмування вивчена ще не була, писання на HTML допоможе набути деяких корисних навичок. Вони стануть у пригоді в момент освоєння програмних кодів і принципів їх написання. У зв'язку з цим потрібно навчитися робити хоча б домашні сторінки. Слід також спробувати XHTML. Він більш акуратно опрацьований у порівнянні з класичним HTML.

Технічно Всесвітня павутина є комплексом комп'ютерних мереж. Однак на сучасному етапі це досить важливе середовище комунікації, яке може бути використане для виконання різних завдань. Слід розуміти, що російські хакери повинні знати англійську. Це пов'язано з наявністю великої кількості інформації, яка доступна лише цією мовою.

Жодної монотонності бути не повинно

Бути фахівцем у галузі комп'ютерів, програм та всесвітньої мережі – величезне задоволення. Однак для цього потрібно докласти максимум зусиль. Відповідно, потрібна мотивація. Щоб бути хакером, необхідно отримувати задоволення від процесу вирішення проблем у момент відточування навичок та тренування інтелекту. Фахівцям такого рівня ніколи не буває нудно довго і ретельно вивчати масу мов та програм, і робота їм не видається монотонною. Вони роблять те, що їм подобається.

Як стати хакером? Набір програм (операційні системи, мови програмування, відкриті коди тощо), знання англійської мови, прагнення до розуміння чогось нового - все це допоможе досягти поставленої мети. Але що слід пам'ятати?

  1. Не треба забувати про те, що для того, щоб стати одним із найкращих у своїй справі, потрібно вирішувати лише найскладніші завдання. Не треба мати занадто високу зарозумілість. Просто необхідно ставити перед собою цілі, розвиватися з кожним днем. Якщо щось не було зрозуміло сьогодні, то слід постаратися розібратися в складному питанні. Якщо не було отримано нову навичку, то, швидше за все, день пройшов даремно. Не слід робити собі поблажок.
  2. Не всі комп'ютерні спеціалісти однакові. Є ті, хто цікавиться лише отриманням прибутку. Є такі, які прагнуть знань та інформації, іноді при цьому переступаючи межу закону. Але всі знаменитості-хакери характеризуються наявністю різних цілей. Саме це дозволяє їм досягати значних висот у своїй професії.
  3. Будучи новачком, треба намагатися зламати великі корпорації чи державні структури. Слід розуміти, що люди, які відповідають за безпеку цих систем, швидше за все, у своїй справі знаються набагато краще. Слід зазначити, що такі фахівці навіть у момент виявлення вторгнення не оперативно реагуватимуть. Вони спочатку дочекаються, доки хакер не наслідить серйозно. Інакше кажучи, новачок може почуватися у безпеці після злому, продовжуючи дослідження систем, наприклад, на наявність уразливостей. А фахівці тим часом активно заманюють їх у пастку.
  4. Необхідно постійно вдосконалюватись, вивчаючи спеціалізовану літературу.

Висновок

На основі всього вищесказаного можна зробити висновок. Треба постійно вивчати різні дисципліни, мови, літературу, мережу. Хакерів не так уже й багато. Тому, щоб стати одним із них, необхідно спочатку готувати себе до кропіткої та довгої роботи насамперед над самим собою. І ще, якщо з дитинства ви не любили вирішувати логічні завдання, то варто спробувати знайти для себе інше заняття, яке не потребує мозкового штурму, максимальної посидючості та серйозного терпіння.