View Single Post
  #1 Old 05-07-2014, 10:15 AM
SemenUmen
 
SemenUmen's Avatar
 
Join Date: May 2014
Posts: 21
Contact: 2929260
SemenUmen is an unknown quantity at this point
Send a message via ICQ to SemenUmen Send a message via Skype™ to SemenUmen
Default Краткий словарик хакера

Что такое уязвимость?
В компьютерной безопасности, термин уязвимость (англ. vulnerability) используется для обозначения дыры или бага(недостатка) в системе, используя который, возможно вызвать ее неправильную работу, повысить привилегии в системе, получить несанкционированный доступ к данным и т.д. Уязвимость может быть результатом ошибок программирования или недостатков, допущенных при проектировании системы. Уязвимость может существовать либо только теоретически, либо иметь известный эксплойт (программный код, эксплуатирующий (использующий)эту уязвимость).

- Что такое эксплоит?
Эксплойт (англ. exploit — использовать) — это общий термин в сообществе компьютерной безопасности для обозначения программного кода, который, используя возможности предоставляемые ошибкой, отказом или уязвимостью, ведёт к повышению привилегий или отказу в обслуживании компьютерной системы. Различают локальные и удалённые эксплоиты.Локальный эксплоит требует предварительного доступа к серверу (к компьютеру) и как правило его действия направлены на повышение привилегий в системе (пример. рутовые эксплоиты - повышают права пользователя до root). Удалённые эксплоиты используют уязвимости в сетевых сервисах, протоколах и т.д. и не требуют предварительного доступа к уязвимой системе.

- Что такое Metasploit?
Metasploit Framework (согласно описанию) это законченная среда для написания, тестирования и использования кода эксплойтов. Эта среда обеспечивает надежную платформу для испытаний на проникновение, разработки шелкодов и исследования уязвимостей". Написан на Perl (с некоторыми частями на ассемблере,Python и C) – отсюда нет привязки к какой либо платформе – будет работать в любой системе, где есть интерпретатор Perl`a (с оговоркой, см. дальше). На данный момент, пакет Metasploit Framework функционирует как на Linux так и на Windows, а так же на Мас.

- Что такое связка Эксплоитов?
Система эксплоитов, содержащая разные сплоиты под разные уязвимости разных браузеров, построенная с таким расчётом, чтобы обеспечить максимальное колличество пробивов уязвимых клиентов.

- Что значит пробив? Взлом удалённого клиента при заходе его на заражённую web-страницу. (Как правило при этом производится загрузка и последующий запуск целевого файла на компьютере-жертве без его ведома).

- Что такое HOST? (хост)
Хост (от англ. host — хозяин, принимающий гостей) — любое устройство, предоставляющее сервисы формата «клиент-сервер» в режиме сервера по каким-либо интерфейсам и уникально определённое на этих интерфейсах. В более частном случае под хостом могут понимать любой компьютер, сервер, подключенный к локальной или глобальной сети.
Слово «хост» само по себе является практически жаргонным термином,и не несёт никакой информации об устройстве или его функционировании. Употребление слова «хост» имеет смысл только на пару с пояснением, хостом какого сервиса предполагается называемое устройство. Тем не менее, зачастую название сервиса опускают, предполагая, что оно очевидно из контекста.
Хост - узел сети, не являющийся маршрутизатором, т.е. не передающий информацию из одной сети в другую.

Основные типы Web-уязвимостей:

1) XSS - cross site scripting - инъекция зловредного кода в тело веб-страницы, атака направлена на клиента сервера. Условно XSS можно разделить на активные и пассивные:
при активных XSS вредоносный скрипт хранится на сервере, и срабатывает в браузере жертвы, при открытии какой-либо страницы зараженного сайта; пассивные XSS подразумевают, что скрипт не хранится на сервере уязвимого сайта, либо он не может автоматически выполниться в браузере жертвы. Для срабатывания пассивной XSS , требуется некое дополнительное действие, которое должен выполнить браузер жертвы (как правило - клик по специально сформированной ссылке, часто эта ссылка и содержит внедряемый код).

- Что может дать взломщику атака типа XSS?
1) Как правило взломщик использует возможность угнать (прочитать) Cookie (Куки) и перенаправить их на свой Sniffer (Сниффер) . В дальнейшем он может использовать их для авторизации на уязвимом сайте, изменив значения у себя в браузере. К примеру, угнав куки администратора сайта, форума, он может получить возможность поднять свои привилегии до админских на уязвимом сайте.
2) Второе применение XSS уязвимости - это редирект на заранее подготовленную страницу. Это может быть фейковый сайт, т.е. к примеру сайт на котором найдена уязвимость не использует куки, поэтому юзера можно отредиректить на свою фейковую страницу и уже там попытаться похитишь логин и пароль. Либо делать редирект на сайт где установлен сплоит, использующий уязвимость в браузере.
3) Повысить свои позиции в рейтинге поисковиков. Если уязвимость активная, то можно оставлять линки на свой сайт тем самым повышать колличество ссылок на свой ресурс.


- Что такое снифер?
(от англ. to sniff — нюхать) — сетевой анализатор трафика, программа или программно-аппаратное устройство, предназначенное для перехвата и последующего анализа, либо только анализа сетевого трафика, предназначенного для других узлов. Простой снифер на php - скрипт, принимающий и записывающий в файл лога значения куков атакуемого через XSS браузера пользователя.

- Что такое редирект?
Перенаправление клиента на другой URL

- Что такое URL?
Единый указатель ресурсов (англ. URL — Uniform Resource Locator) — единообразный локатор (определитель местонахождения) ресурса. URL — это стандартизированный способ записи адреса ресурса в сети Интернет.

- Что такое Cookie?
HTTP-Cookie или «куки» (от англ. cookie — печенье) — служебная информация, посылаемая веб-сервером на компьютер пользователя, для сохранения в браузере. Применяется для сохранения данных, специфичных для данного пользователя, и используемых веб-сервером для различных целей, в числе которых:
- в системах с удаленным доступом — пароль (как правило часто это хэш), порождаемый сервером при первом подключении и отсылаемый пользователю; при последующих подключениях пользователь должен предоставлять серверу этот пароль (чаще хэш)
- отслеживание состояния сессии (обычно кукис - хранит идентификатор сессии).
Т.е. сначала мы вводим логин и пароль, сервер идентифицирует пользователя по логину и сверяет пароль, хранящийся в базе данных сайта. Если пароль совпадает, то сервер формирует куки (логин и хэш пароля к примеру) и отправляет клиенту (они сохраняются в браузере). Для последующей авторизации пользователю уже не нужно вводить логин и пароль, потому что сервер имеет возможность прочитать куки клиента, хранящиеся в браузере и по ним идентифицировать пользователя. Куки могут быть действительны ограниченное время (время жизни куки). Если время жизни истекло, требуется повторная авторизация с вводом логина и пароля.
Через подмену куки так же иногда возможно организовать XSS нападение, вписав в значение куки вредоносный код.


- Что такое Сессия?
Посещение, Визит, Site session - серия запросов к серверу, сделанных одним пользователем в заданный промежуток времени. В течение сессии пользователь обращается к тем либо иным страницам сайта, и каждый его запрос отражается в логах сервера. Сессия считается завершенной, еслив течение 30 минут (обычно) от пользователя не поступило к серверу ни одного нового запроса. Сессия на сайте - время от подсоединения пользователя к серверу до обрыва связи или отсоединения. Собственно, сессии, если в двух словах - это механизм, позволяющий однозначно идентифицировать клиента (браузер) и создающий для этого браузера файл на сервере, в котором хранятся переменные сеанса.

- Что такое идентификатор сессии?
Уникальный случайный номер (обычно много знаков) который присваивается сервером клиенту и отсылается ему в виде куки, значение которой однозначно идентифицирует пользователя.
Подробнее о механизме сессий в PHP http://www.phpfaq.ru/sessions

2. SQL injection - (на слэнге скуля) инъекция (внедрение) своего запроса в существующий легальный запрос, либо модификация легального запроса к базе данных.
- Что такое SQL? (произносится Эскуэль)
SQL - (англ. Structured Query Language — язык структурированных запросов) — универсальный компьютерный язык, применяемый для создания, модификации и управления данными в реляционных базах данных. Вопреки существующим заблуждениям, SQL является информационно-логическим языком, а не языком программирования, хотя он и содержит в себе логические операторы и различные функции функции.


- Что такое PHP? (на слэнге ПЭХЭПЭ, правильно ПиАшПи
PHP - (англ. PHP: Hypertext Preprocessor — «PHP: препроцессор гипертекста») — язык программирования, созданный для генерации HTML-страниц на веб-сервере и работы с базами данных. В настоящее время поддерживается подавляющим большинством хостинг-провайдеров. Входит в LAMP — «стандартный» набор для создания веб-сайтов (Linux, Apache, MySQL, PHP (Python или Perl)).) PHP является интерпретируемым языком программирования.

Справочник PHP http://www.php.su/


- В чём отличие интерпретируемого языка от компилируемого?
Код интерпретируемого языка обрабатывает сначала интерпретатор (специальная программа, каждый раз переводящая построчно каждую строку php-кода в машинные коды в процессе исполнения). Компилятор, в отличие от интерпретатора, "переводит" весь код программы в машинные коды целиком и в дальнейшем уже, для запуска программы на исполнение, не требуется повторная компиляция. Вот почему компилируемые программы работают намного быстрее чем интерпретируемые и не требуют наличия какого-либо обработчика (интерпретатора).


3.PHP include - (на слэнге пэхэпэинклуд) выполнение своего кода на целевом веб-сервере.
Это один из способов взлома веб-сайтов, работающих на PHP, заключающийся в выполнении постороннего кода на серверной стороне. Потенциально опасными функциями являются:

PHP код:
eval(),
preg_replace () ( с модификатором «e» ),
require_once(),
include_once(),
include(),
require(),
create_function ().
PHP-инъекция становится возможной, если входные параметры принимаются и используются без проверки.

- Что такое хэш? (hash)
Хеш (англ. Hash, произносится /hæʃ/)
Хеш в программировании криптоалгоритмов — слепок (оттиск) часто шеснадцатиричное число (реже строка) фиксированной длины, которое ставится в соответствие данным произвольной длины таким образом, чтобы вероятность появления различных данных с одинаковым хешем стремилась к нулю, а восстановить данные по их хешу было как можно труднее (необратимое преобразование).

- Что такое хэширование?
одностороннее преобразование входных данных.

- Что такое Хеш-функция? Функция выполняющая такое преобразование (обычно под этим понимают сам алгорим хэширования).

- Что такое алгорим? это точный набор инструкций, описывающих последовательность действий некоторого исполнителя для достижения результата, решения некоторой задачи за конечное время. По мере развития параллельности в работе компьютеров слово «последовательность» стали заменять более общим словом «порядок». Это связано с тем, что какие-то действия алгоритма должны быть выполнены только друг за другом, но какие-то могут быть и независимыми (и выполняться одновременно).

- Какие существуют алгоритмы хэширования (хэш функции)? Алгоритмов хэширования существует очень много, никто не мещает создать свой алгоритм хэширования на основе базовых алгоритмов, комбинируя различным способом эти алгоритмы и используя результат хэширования, как аргумент для другой функции хэширования.

Вычислить онлайн хэши и посмотреть их можно тут: http://www.insidepro.com/hashes.php?lang=rus
- Какие самые популярные алгоритмы хэширования?

Самые популярные считаются md5(128bit), mysql(64bit), sha-1 (256bit), MySQL5 (256bit). в скобках указана разрядность хэша, чем больше разрядность, тем выше стойкость хэша к перебору (взлому - поиск исходной начальной последовательности)
- Как определить тип хэша по его виду?

1) Не всегда можно точно определить тип хэша, например хэши sha-1 (256bit) и MySQL5 (256bit) - идентичны по внешнему виду.
Некоторые типы можно определить по характерным символам в самом хэше, например:
Код:
MD5(Base64) - ip0JPxT4cB3xdzKyuxgsdA == MD5(Unix) - $1$$ I2o9Z7NcvQAKp7wyCTlia0 MD5(APR) - $apr1$$ qjtLUZpoiD4RwXIYf4qVb0
2) Иногда можно с определённой уверенностью узнать алгоритм из типа форумного движка или CMS
Типы хэшей, используемых в популярных движках, смотрите тут: http://someshit.net/as3f13asf21/
Более подробно по типам хэшей можно почитать тут: https://forum.antichat.ru/thread26983.html

- Можно ли расшифровать хэш?
Хэш нельзя в правильном понимании слова расшифровать потому как алгоритм односторонний (необратим). Но можно пробовать подобрать исходную последовательность и получить на выходе функции хэширования такой же хэш. В этом случае с большой вероятностью это будет исходный пароль, либо что очень маловероятное явление - коллизия функции хэширования.

- Что такое коллизия хэш-функции?
Коллизией хэш-функции называется ситуация, при которой для двух различных входов T1 и T2 выполняется условие H(T1)=H(T2) т.е. проще говоря, два разных пароля имеют один и тот же хэш. Большинство хэш-функций имеют вероятные коллизии, но для хороших функций они возникают намного реже (или сложнее в поиске) по сравнению с плохими. В некоторых частных случаях, для которых заранее известно все возможное множество входных данных, возможно создать хорошие хэш-функции, отображающие все множество входов на множество различных выходов. Но для функций, принимающих вход переменной длины и возвращающих хэш постоянной длины (такие, как MD5), коллизии будут существовать всегда, поскольку любому значению хэш-функции может быть сопоставлено бесчисленное множество различных входов.

- Как мне получить исходный пароль зная хэш?
1) Использовать онлайн сервисы мгновенной расшифровки. (Как правило они содержат вычисленные зарание таблицы соответствия пароль: хэш и при запросе осуществляется простой поиск по такой таблице).
Список онлайн сервисов приведён тут https://forum.antichat.ru/thread11028.html
2) Использовать программы брутфорсеры,использующие различные виды атак (перебор по словарям, грубой силой, по маске и др.)
Основные популярные программы для брута найдёте тут: https://forum.antichat.ru/thread37651.html

- Что такое Соль? Соль (salt) - это сгенерированные скриптом данные, которые усложняют подбор пароля после хеширования.
Чем больше символов в Salt, тем дольше и сложней брутить подобный хэш. ПОясню на примере:допустим юзер взял простой пароль 12345 , сбрутить его можно за считанные секунды. В случае с солью, скрипт добавит к паролю например 98$#5h!^ вот такие символы, т.е. хэш будет вычисляться уже от 98$#5h!^12345 , что сбрутить намного сложнее. Как правило на каждый пароль генерится своя соль, что так же снижает скорость перебора в случае одновременного брута большого списка хэшей - скорость уменьшается прямо пропорционально количеству хэшей, т.е. 2 хэша - в два раза, 3 хэша в 3 раза и т.д. Это происходит потому, что вычисление хэша надо сделать для каждого пароля с разной солью, а не один раз для всего списка. Как правило соль хранится в таблице в базе данных на стороне сервера, там же где и сам хэш.
SemenUmen is offline   Reply With Quote