Computer Science
رفتن به کانال در Telegram
По всем вопросам: @altmainf Уважаемый менеджер: @altaiface
نمایش بیشتر7 699
مشترکین
-724 ساعت
-217 روز
-6830 روز
آرشیو پست ها
7 699
Taint-анализ — что это?
Taint-анализ — это технология, позволяющая отслеживать распространение непроверенных внешних данных по программе во время её работы.
Попадание таких данных в некоторые ключевые точки может приводить к возникновению различных уязвимостей, среди которых SQL injection, cross-site scripting (XSS), path traversal и тд. Эти уязвимости могут быть использованы злоумышленником для нарушения корректной работы системы, получения конфиденциальных данных или проведения прочих несанкционированных операций.
С точки зрения taint-анализа, приложение уязвимо в случае, если заражённые данные могут попасть в некоторые ключевые точки приложения. Их называют приёмниками заражения (taint sink). Каждой потенциальной уязвимости соответствуют свои приёмники. Например, для SQL injection приёмником может являться точка передачи строки запроса в объект SQL команды.
7 699
SQL-инъекция
SQL-инъекция — атаки, позволяющие злоумышленнику запускать любой SQL-код в базе данных и производить различные несанкционированные действия над базой данных. Они могут затрагивать как сами данные, так и структуру базы.
Одной из важнейших задач при обеспечении устойчивости приложения к SQL-инъекциям является поиск фрагментов кода, которые могут быть уязвимы к данному виду атак. Многие разработчики используют для этих целей различные инструменты, производящие taint-анализ.
Помимо инъекций, есть другие уязвимости, вызванные плохой обработкой входных данных. Всегда нужно проверять не только содержимое, но и размеры данных извне, которые вы пропускаете в свою систему.
7 699
Язык структурированных запросов
SQL или Structured Query Language — это язык программирования, предназначенный для управления данными в СУБД (система управления базами данных).
Используется в любой программе и на любом сайте, где идет работа с базами данных. SQL — связующее звено, которое обеспечивает взаимодействие приложения или сайта с базой данных и информацией, которая там хранится.
С помощью SQL можно:
⁃ создавать таблицы данных;
⁃ получать, изменять и хранить данные;
⁃ выполнять вычисления;
⁃ обеспечивать защиту данных;
⁃ администрировать сервер СУБД.
7 699
Internet Key Exchange или IKE
Internet Key Exchange (IKE) — безопасный протокол управления ключами, используемый для того, чтобы создать безопасный канал аутентификации связи между двумя устройствами.
Функции IKE:
⁃ Согласование и управление IKE параметрами IPsec
⁃ Аутентификация защищенного обмена ключами
⁃ Обеспечивает аутентификацию взаимного равноправного узла с помощью общих секретов и открытых ключей
⁃ Обеспечивает защиту идентификации.
⁃ Применяет методы Diffie-Hellman и является необязательным в IPsec.
Есть две версии стандартов: IKE и IKE 2. Преимущества второй версии над первой в том, что она уменьшает задержку установки SA IPSec, увеличивает скорость установления соединения и улучшает надежность, так как все сообщения являются запросами или ответами.
7 699
☃️ Бесплатно освойте профессию дизайнера с нуля. Вместе сделаем вам портфолио из 4+ работ с личной поддержкой от наставника.
Что вы получите?
— Фидбэк (мощный разбор всех ДЗ от куратора)
— Тусовка (личный кабинет с уроками + живой чат)
— Портфолио и экзамен (упакуем по урокам и проверим)
— Мастер-класс "как заработать на дизайне" и найти клиента
🔥 Будем делать: веб-дизайн, графический дизайн, анимацию интерфейсов.
→ Начать обучение бесплатно
Программа бесплатного курса:
— Обучение по Figma с нуля и 4+ дз с личным разбором
— Изучение основ дизайна (контент, сетки, композиция т.д.)
— Создание анимации интерфейса
— Все о профессии и доходе дизайнера (как найти клиентов и сколько можно заработать)
👉 Первый урок уже сегодня, кликайте сюда и забирайте все бонусы
7 699
Язык R — для тех, кто занимается статистикой и анализом данных
R — интерпретируемый объектно-ориентированный язык программирования. Разработан статистиками для статистиков — в нём уже есть популярные статистические тесты, методы анализа данных, удобные инструменты для построения графиков.
С помощью R можно:
⁃ Обработать, очистить и преобразовать данные для исследования.
⁃ Провести статистические тесты.
⁃ Выполнить разведочный анализ.
⁃ Работать с таблицами разных форматов
⁃ Нарисовать интерактивный график
⁃ Анализировать регрессионные модели.
Для языка R есть интерфейс командной строки строки и графические пользовательские интерфейсы. Самые популярные из них: RStudio, Jupyter Notebook и Anaconda
R — это целая инфраструктура и специализированная среда для работы с данными.
7 699
Хотите протестировать сайт, но не хватает знаний?
Мечтаете обойти крутую систему безопасности, но не знаете с чего начать?
Сегодня для вас нашлось решение.
На канале Теневые.TwoSouls вы получите полные знания по Безопасности и Анонимности, узнаете тонкости Хакинга, приобретёте знания по Вирусологии, проапгрейдите своё мышление и станете спецом в Социальной инженерии.
Добро пожаловать в мир неограниченных возможностей 👉
https://t.me/+W6jGA3-NpGUzODFi
7 699
Межсайтовый скриптинг и как он работает?
XSS — распространенный тип веб-атаки, заключающийся во внедрении на страницу сайта или приложения вредоносного кода. Когда пользователь открывает пораженную страницу, внедренный скрипт взаимодействует с удаленным сервером злоумышленника.
Один из механизмов обеспечения безопасности в интернете — правило ограничения домена. Оно означает, что вредоносный код на одном сайте не сможет навредить другому сайту или его пользователям из-за ограничения доступа на другом домене.
Но это в идеале, а на практике у веб-приложений и сайтов есть множество уязвимостей.
Воспользовавшись ими, злоумышленник может взломать ресурс и внедрить на него вредоносный скрипт. При этом он будет восприниматься как часть родного кода, написанного разработчиком. Таким образом, ресурс, на котором размещается вредоносный скрипт, становится соучастником атаки.
7 699
Что такое эксплойт?
Эксплойт — это программа или код, который использует недостатки в системе безопасности конкретного приложения для заражения устройства.
Есть два способа «скормить» пользователям эксплойты:
⁃ при посещении ими сайта, содержащего вредоносный код эксплойта.
⁃ при открытии пользователем безобидного на вид файла со скрытым вредоносным кодом.
Во втором случае для доставки эксплойта, как правило, пользуются спамом или фишинговым письмом.
Эксплойты представляют угрозу даже для осторожных и добросовестных пользователей, которые регулярно обновляют свое программное обеспечение. Причина кроется во временном зазоре между открытием уязвимости и выходом патча для ее исправления.
В этом интервале эксплойты могут свободно функционировать и угрожать безопасности почти всех интернет-пользователей при отсутствии установленных в системе автоматических средств предотвращения атак эксплойтов.
7 699
Почему строка зелёная?
Зелёная строка — это визуальный показатель надёжности сайта. Ей обозначаются только ресурсы, защищенные SSL-сертификатом с расширенной проверкой
Она отображается в адресной строке браузера зелёным полем со значком замка и названием компании. Если в адресной строке только замочек, то этот сайт с сертификатом уровнем ниже.
Зелёная строка сигнализирует, что ресурс надежен и принадлежит реально существующей компании, которая прошла полную проверку — документации, правовой, физической и операционной деятельности.
На таком сайте можно без опасений вводить данные кредитных карт, логины и пароли. Передача данных идет по безопасному HTTPS соединению, трафик защищен шифрованием — данные посетителей не попадут в руки мошенников.
7 699
Как работает IPsec?
IPSec — это расширение IP, которое обеспечивает безопасность всех коммуникаций на основе IP.
В отличие от IP-пакетов пакеты IPSec не могут быть прочитаны или изменены по пути. IPSec часто используется для создания виртуальных сетей (VPN), где интернет-соединение используется для замены физического соединения, так что компьютер может фактически присоединиться к сети, которая находится далеко от него.
IPsec использует два протокола для обеспечения безопасности трафика - Authentication Header (АН) и Encapsulating Security Payload (ESP)
IP Authentication Header (AH) обеспечивает целостность без установления соединения, аутентификацию источника данных и дополнительную службу защиты от повтора.
Протокол Encapsulating Security Payload (ESP) обеспечивает конфиденциальность (шифрование) и ограниченную конфиденциальность трафика.
7 699
Открытый и закрытый ключ шифрования
Ключ шифрования – это тайная информация, которая используется алгоритмом для шифрования и расшифровки информации.
Надёжность ключа зависит от его длины в битах. В технологии SSL используют шифры 4096 бит для корневого сертификата и 128–256 бит для клиентских. Такая длина достаточна для безопасной передачи данных.
Протокол SSL использует асимметричное шифрование или шифрование с открытым ключом для установки соединения. Несмотря на название, здесь используются 2 ключа: открытый и закрытый. Оба формируются при запросе SSL-сертификата.
Открытый ключ доступен всем. Используется для шифрования данных при обращении браузера к серверу.
Закрытый ключ известен только владельцу сайта. Используется для расшифровки данных, отправленных браузером.
Шифрование с двумя ключами разного типа гарантирует сохранность информации. Даже если мошенник перехватит трафик, не сможет расшифровать его без закрытого ключа.
7 699
Что такое кроссплатформенность?
Кроссплатформенность — это способность программного обеспечения полноценно работать на любом устройстве вне зависимости от типа операционной системы.
Сделать это можно с помощью современных кроссплатформенных языков программирования (например, C, С++). При надлежащем качестве кода достаточно будет переписать только некоторые фрагменты, не трогая при этом основной движок программы.
При работе с устройствами на разных платформах стандартные элементы интерфейса могут искажаться, поэтому в таких случаях нужно позаботиться об адаптивности. Например, способности сайта автоматически «подстраиваться» под размеры экрана пользовательского устройства.
7 699
В чем разница между ассемблером и языком ассеблера?
Ассемблер и язык ассемблера это разные вещи.
Говоря просто о языке ассемблера, мы обычно понимаем язык программирования, состоящий из команд процессора, представленных в виде символических обозначений.
А вот просто ассемблер — это компилятор этого языка в машинный код.
То есть, например, машинная команда о пересылке данных в двоичном виде будет выглядеть 10111000, а в языке ассемблера она будет представлена словом mov.
Здесь нет в привычном понимании абстракций, вроде функций или циклов, все это здесь пишется с нуля.
7 699
Протокол безопасности TLS
В 1995 году был внедрён
SSL, однако в 2014 году в его работе обнаружили уязвимости. И на основе SSL 3.0 был разработан новый стандарт — TLS.
Когда речь идёт о протоколе SSL, на самом деле подразумевается протокол TLS.
Протокол TLS (Transport Layer Security) — криптографический протокол, который обеспечивает защищённый обмен данными между сервером и клиентом.
Протокол работает на трёх уровнях защиты:
⁃ отвечает за конфиденциальность передаваемых от компьютера к компьютеру данных,
⁃ проводит аутентификацию,
⁃ следит за целостностью передаваемой информации.
TLS-протокол лежит в основе безопасного обмена информацией, но не обеспечивает его сам по себе. Чтобы защищённое соединение состоялось, нужно настроить одно из безопасных интернет-соединений, например — FTP, IMAP/POP3/SMTP и HTTPS.7 699
Параметры безопасности протокола TLS
TLS отвечает за безопасность транзакций и сессии.
Обеспечивает защиту в три этапа:
1. Handshake (рукопожатие)
происходит согласование параметров соединения между клиентом и сервером. Для этого используется обмен ключами по алгоритму RSA:
2. False Start (фальстарт)
Процедура возобновления сессии. Если транзакции выполняются в пределах одной запущенной сессии, данный этап позволяет пропустить процедуру Handshake. Протокол повторно использует те данные, которые уже были обработаны и подтверждены в начале сессии. При этом каждая сессия имеет свой срок жизни. Как только срок сессии истекает, с помощью TLS Handshake запускается новая сессия.
3. Chain of trust (цепочка доверия)
Отвечает за аутентификацию между клиентом и сервером. Работает на основе регулярной проверки подлинности — соответствия сертификатов стандартам Сертификационных центров, которые их выдают. Если обнаружится, что сертификат скомпрометирован, данные будут отозваны, транзакция не состоится и сессия будет прервана.
7 699
Область применения симметричного шифрования
Симметричное шифрование используется для обмена данными во многих современных сервисах, часто в сочетании с асимметричным шифрованием.
Например, мессенджеры защищают с помощью таких шифров переписку (при этом ключ для симметричного шифрования обычно доставляется в асимметрично зашифрованном виде), а сервисы для видеосвязи — потоки аудио и видео.
В защищенном транспортном протоколе TLS симметричное шифрование используется для обеспечения конфиденциальности передаваемых данных.
Симметричные алгоритмы не могут применяться для формирования цифровых подписей и сертификатов, потому что секретный ключ при использовании этого метода должен быть известен всем, кто работает с шифром, что противоречит самой идее электронной подписи.
7 699
Достоинства и недостатки симметричного шифрования
Симметричные алгоритмы требуют меньше ресурсов и демонстрируют большую скорость шифрования, чем асимметричные алгоритмы.
Большинство симметричных шифров предположительно устойчиво к атакам с помощью квантовых компьютеров, которые в теории представляют угрозу для асимметричных алгоритмов.
Слабое место симметричного шифрования — обмен ключом. Поскольку для работы алгоритма ключ должен быть и у отправителя, и у получателя сообщения, его необходимо передать; однако при передаче по незащищенным каналам его могут перехватить и использовать посторонние (на практике во многих системах эта проблема решается шифрованием ключа с помощью асимметричного алгоритма).
7 699
Симметричное шифрование
Способ шифрования данных, при котором один и тот же ключ используется и для кодирования, и для восстановления информации.
Например, если алгоритм предполагает замену букв числами, то и у отправителя сообщения, и у его получателя должна быть одна и та же таблица соответствия букв и чисел: первый с ее помощью шифрует сообщения, а второй — расшифровывает.
Однако такие простейшие шифры легко взломать и их использование не имеет никакого смысла.
Поэтому современные симметричные алгоритмы считаются надежными, если отвечают следующим требованиям:
⁃ Выходные данные не должны содержать статистических паттернов исходных данных.
⁃ Шифр должен быть нелинейным (не должно быть закономерностей, которые можно отследить, имея на руках несколько открытых текстов и шифров к ним).
7 699
Асимметричные алгоритмы
• RSA — алгоритм, в основе которого лежит вычислительная сложность факторизации (разложения на множители) больших чисел. Применяется в защищенных протоколах SSL и TLS, стандартах шифрования, например в PGP и S/MIME, и так далее. Используется и для шифрования данных, и для создания цифровых подписей.
• DSA — алгоритм, основанный на сложности вычисления дискретных логарифмов. Используется для генерации цифровых подписей. Является частью стандарта DSS.
• Схема Эль-Гамаля — алгоритм, основанный на сложности вычисления дискретных логарифмов. Лежит в основе DSA и устаревшего российского стандарта ГОСТ 34.10–94. Применяется как для шифрования, так и для создания цифровых подписей.
• ECDSA — алгоритм, основанный на сложности вычисления дискретного логарифма в группе точек эллиптической кривой. Применяется для генерации цифровых подписей, в частности для подтверждения транзакций в криптовалюте Ripple.