По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
  На заре информационных технологий, у разработчиков не было никакой необходимости беспокоиться о сетях. Их главной задачей было убедиться в том, что их программное обеспечение выполняет свои функции и не выходит из строя слишком часто.  И среднестатистический человек, который взаимодействовал с этим программным обеспечением, не представлял никакой угрозы. Большинство пользователей даже не утруждали бы себя, чтобы прочитать руководство пользователя, которое поставлялось вместе с ПО, не то чтобы искать уязвимости в коде.  И вот, пришел Интернет и все изменил. Практически сразу компьютерные сети стали обмениваться информацией. И с ростом сложности росли также шансы на то, что кто-то (кто по сути не должен этого делать) может проникнуть в эти сети.  И, как правило эти «кто-то» обладали необходимыми навыками, которые позволяли им наживаться на уязвимом коде.  И все это привело нас к тому, что мы имеем сейчас, – времени беспрецедентных угроз кибербезопасности. Иногда кажется, что мы получаем новости об очередных кибератаках чуть ли не каждый день. Со своей стороны, сетевые администраторы развертывают все более изощренные защитные системы, чтобы укрепить свои сети от действий взломщиков. И теперь злоумышленники настроены на то, что разработчики программного обеспечения будут делать сверх того, что необходимо и возможно, чтобы защитить свой код и предотвратить несанкционированный доступ.  И все же, в современных школах программирования по-прежнему не уделяют должного внимания усилению защиты программного кода. А при разработке современных приложений этот этап становится обязательным.  Давайте исправим это. В этой статье я расскажу вам, что такое обфускация кода. Кроме того, я покажу вам шесть различных методов обфускации, которые активно используются в наше время. Это поможет вам встать на путь создания безопасного программного обеспечения. Что такое обфускация кода? Обфускация кода – это ряд методов программирования, которые предназначены для маскировки фрагментов программного кода. Это основной способ, с помощью которого программисты могут защитить свою работу от несанкционированного доступа или вмешательства со стороны хакеров или тех, кто посягает на их интеллектуальную собственность.  Что самое главное, так это то, что методы обфускации кода могут видоизменить структуру и методы, которыми оперирует программа, но при этом вывод программы всегда будет один и тот же.  Беда в том, что многие методы обфускации кода могут потреблять дополнительные ресурсы и, соответственно, увеличивать время выполнения программы.  Именно поэтому важно знать, какие методы можно использовать без вреда для производительности, а какие могут оказать на нее негативное воздействие. Если вы будете осознавать «стоимость» этих методов, то сможете найти баланс между защитными функциями и производительностью.  Ниже представлены шесть самых популярных на сегодняшний день методов обфускации кода. Избавьтесь от избыточных данных Первый метод, который позволит вам усилить защиту вашего кода, заключается в том, что вам нужно избавить ваш код от всего ненужного. Этот метод стоит применять всегда.  Таким образом вы сможете существенно упростить свою кодовую базу и сократите поверхность атаки, которую вы так усердно пытаетесь защитить.  Это значит, что вам нужно удалить избыточные функции, информацию об отладке и метаданные по мере возможности. Одним словом, все, что может позволить злоумышленнику найти уязвимость.  Преобразуйте данные Следующий шаг – преобразовать данные, которые обрабатывает ваш код, так, чтобы их нельзя было распознать.  Если вы, например, замените значения выражениями, измените формат хранилища данных, с которым вы работаете, или будете использовать двоичный формат для ваших чисел, это существенно усложнит работу с кодом. Соответственно, любой, кто попробует разобрать ваш код, с трудом сможет извлечь из него что-то полезное.  В частности, вы можете шифровать ваши строки для того, чтобы их невозможно было прочитать. Для этого можно использовать довольно простую кодировку base64. Эта кодировка превратит этот код: String s = "Hello World"; вот в этот: String s = new String(decryptString("SGVsbG8gV29ybGQ=")); Для опытного программиста, конечно, не составит труда определить, что здесь происходит. Однако если он возьмется расшифровывать все эти строки (а их может быть немало), то это займет у него достаточно много времени, и, в конце концов, у него могут просто опуститься руки. А если вы добавите к этому методу какие-нибудь другие, также связанные с преобразованием данных, то это вполне может стать серьезной первой линией защиты.  Путайте порядок выполнения процесса Одно из самых сложных требований обфускации кода состоит в том, что ваш код должен по-прежнему работать так, как было задумано изначально. Но нигде не сказано, что ваш код должен обязательно выполняться в логическом порядке. Если вы сможете перетасовать операции вашего кода так, чтобы результат его работы был прежним, то для третьей стороны это может стать проблемой – ей будет куда сложнее понять, что делает ваш код.  Но здесь есть один нюанс: нужно быть очень аккуратным, чтобы случайно не создать большое количество бессмысленных циклов и тупиков, которые в последствие могут замедлить время выполнения кода.  Давайте в качестве примера взглянем на следующий фрагмент кода. Он вычисляет сумму и среднее арифметическое 100 чисел. int i=1, sum=0, avg=0 while (i = 100) { sum+=i; avg=sum/i; i++; }int i=1, sum=0, avg=0 while (i = 100) { sum+=i; avg=sum/i; i++; } Если вы добавите в этот код условную переменную, то сможете скрыть его истинное назначение. Дело в том, что для того, чтобы проанализировать функцию, вам нужно знать, что из себя представляют ее аргументы.  Давайте посмотрим на еще один фрагмент кода. В нем мы добавили условную переменную  random , которая усложняет структуру кода. Таким образом, разобрать его будет куда сложнее. int random = 1; while (random != 0) { switch (random) { Case 1: { i=0; sum=1; avg=1; random = 2; break; } case 2: { if (i = 100) random = 3; else random = 0; break; } case 3: { sum+=i;avg=sum/i ; i++; random = 2; break; } } } Попробуйте скрыть информацию об отладке Иногда особо решительно настроенные злоумышленники могут попытаться получить всякого рода полезную информацию из информации об отладке.  А в отдельных случаях они даже могут найти ключи к разгадке некоторых других методов обфускации, которые вы используете.  Так что, по мере возможностей желательно закрыть доступ к информации об отладке. А если это невозможно, то скройте в отчете любые личные данные. Выбирайте адреса случайным образом В течение последних почти тридцати лет, самыми распространенными уязвимостями программного обеспечения являются ошибки, связанные с управлением памятью. Хакеры активно используют эту уязвимость в своих интересах, и при этом каждый программист прекрасно знает, что эта проблема никуда не делась.  И это не просто проблема новичков. Примерно 70% уязвимостей в веб-браузере Google Chrome являются следствием ошибок памяти.  Действительность такова, что практически нереально предотвратить все ошибки памяти, особенно если вы пишете на таких языках, как С и С++. Но вы можете добавить в свой код некоторые функции рандомизации памяти, которые могут вам помочь.  Если во время выполнения вы присваиваете вашему коду и виртуальным адресам данных случайные значения, то злоумышленникам становится куда сложнее найти и использовать любые неисправленные уязвимости.  Кроме того, это добавляет еще одно преимущество. Даже если ваш код был успешно взломан, воспроизвести его будет очень сложно (если не невозможно). Уже одно это может заставить злоумышленника задуматься о том, стоит ли ему тратить свое время на взлом вашего программного обеспечения.  Меняйте ваш замаскированный код При всем при том, что все методы, которые мы перечислили выше, могут вполне подорвать веру злоумышленников в свои силы, они все же далеки от идеальной защиты. Любой, кто располагает достаточным количеством времени и навыками, в любом случае найдет способ, как обойти вашу линию защиты. И это подводит нас к одному из самых важных методов обфускации.  Все методы обфускации направлены на то, чтобы усложнить работу злоумышленника. Поэтому, если вы отбросите его к началу, это будет просто отличной защитной мерой. Так что, для того, чтобы защитить свой код, вы можете использовать в своих интересах Интернет. Вы можете периодически выпускать обновления, которые будут менять характер и особенности методов обфускации, которые вы используете. Когда вы будете выпускать очередное обновление, вся работа по взлому вашего ПО, которую кто-то, возможно, делал, будет впустую.  Если вы будете достаточно часто менять свой замаскированный код, то продолжительный анализ вашего кода просто не оправдается – злоумышленники не смогут добиться успеха.  Безопасность через неясность Вся суть в том, что нет такого понятия как «невзламываемый» код. Неважно как будет стараться программист, в любом случае где-нибудь останется хотя бы одна уязвимость.  Не то, чтобы вы не должны пробовать.  На практике ваш код не обязательно должен быть идеальным. Он просто должен быть достаточно сложным, чтобы никто в здравом уме не стал даже пытаться его взламывать. А для тех, кто не в своем уме, это просто должно быть очень сложным и времязатратным, чтобы вы могли удерживать их на расстоянии.  И это именно то, чего вы сможете добиться с помощью этих шести методов. Но не забывайте, что ни одна защита не обходится без затрат. Когда вы будете развертывать эти дополнительные функции, обязательно сравните ваши потери во времени выполнения и преимущества, которые они предлагают.  Если вы работаете над чем-то очень важным, возможно, вам стоит применить все эти «неприятные сюрпризы». А если вы пишете генератор цитаты дня, то, пожалуй, и волноваться так сильно не стоит.  Однако, что бы вы ни решили, всегда находите время на то, чтобы усилить защиту вашего кода тем или иным способом. Это важно в мире, в котором угрозы кибербезопасности встречаются на каждом углу. 
img
Безопасность личных данных стоит почти наравне с физической безопасностью людей. Развитие Интернет технологий создало возможность мгновенного доступа ко всей информации не выходя из дома. Государственные организации создают электронный порталы, где можно получить любую информацию о себе. Финансовые организации оказывают онлайн услуги клиентам в виде интернет-банкинга. Публичные сети же сделали все это более доступным. Сидя в любом кафе можем проверить свой банковский счет, получить нужную справку в электронном формате, занять онлайн очередь в разных структурах. Но зачастую подключаясь к открытым, бесплатным беспроводным сетям мы даже не задумываемся, а на самом ли деле на том конце стоит маршрутизатор и наши данные не попадают в руки тех, кто не должен их видеть. В публичных сетях много угроз, одной из которых является атака MITM Man-in-the-Middle "Человек посередине" или атака посредника. Вкратце это такой тип атаки когда хакеры, подключившись к точке доступа, могут поместить себя в качестве посредника между двумя пользователями, у которых нет протоколов взаимной аутентификации. Как только злоумышленники полностью завладевают соединением, они могут читать и даже изменять любую передаваемую информацию. Опытные хакеры могут даже извлечь из потока данных информацию о вашей банковской карте. Последствия утраты таких данных очевидны. Такой вид атаки легче организовать в беспроводных сетях, хотя и проводные сети не застрахованы от этой атаки. Но в проводных сетях можно настроить сетевые устройства таким образом, чтобы она реагировала на смену связки IP и MAC-адреса и при обнаружении заблокировать доступ к сети подозрительному устройству. В проводных же сетях, особенно если это публичные сети, всё немного сложнее. Поэтому пользователям придется самим позаботиться о безопасности своих личных данных. Приготовиться к атаке! Чтобы не стать жертвой атаки типа MITM, нужно знать всего несколько правил безопасности. Первое правило - Firewall Во-первых, включите на своём устройстве межсетевой экран. В системе Windows это Windows Defender Firewall. Он по умолчанию включён, если у вас не установлено стороннее ПО, выполняющее ту же функцию. Проверить и включить Firewall можно на панели управления перейдя по одноимённому пункту меню и выбрав Включить/выключить Windows Defender Firewall: Это защитит ваш компьютер от вторжения злоумышленника и кражи ваших электронных данных. Также не помещает установить какой-нибудь антивирус, даже бесплатный, который способен защитить ваше устройство от заражения сетевым червем, который тоже занимается кражей данных и не только. Никакого HTTP! Во-вторых, в публичных сетях лучше избегать пользования услугами онлайн-банкинга. Но если есть сильная необходимость, то убедитесь, что ваш банк обеспечивает шифрованное соединение между вами и сервером. Проверить это легко. При шифрованном соединении в строке браузера перед адресом отображается значок замка, а перед адресом сайта отображается https://. HTTPS это защищенный протокол передачи данных в сети. Hypertext Transfer Protocol основной протокол связи в интернете. Когда пользователь вводит адрес в строке браузера, последний создает соединение с веб-сервером по этому протоколу. Позже была разработана защищенная версия данного протокола, которая отправляет данные поверх SSL или TLS. Такое соединение позволяет шифровать данные перед отправкой на сервер. Шифрование происходит на устройстве пользователя методом асимметричного шифрования с помощью публичного ключа, который сайт отправляет вам вместе с сертификатом. Посмотреть сертификат сайта и публичный ключ можно в том же браузере. В Google Chrome кликаем на значок замка и выбираем Certificate. В открывшемся окне можно увидеть всю информацию о сертификате включая срок действия и подписавшую сертификат центра сертификации. Расшифровать данные сможет только веб-сервер где имеется вторая приватная часть ключа шифрования. И даже если ваши зашифрованные данные попадут в руки злоумышленников, расшифровать их им придется долго. Правда, атака посредника имеет несколько векторов развития и при наличии необходимых навыков злоумышленник может получить доступ даже к шифрованной информации. Например, он может взломать сервера центра сертификации и заполучить все ключи, которые выданы клиентам. Но это уже больше забота самих центров сертификации. Некоторые сайты имеют две версии, защищенную и обычную через http-протокол. Чтобы всегда пользоваться только защищенным соединением, можете устанавливать специальные расширения для браузеров. Шифрование через VPN В-третьих, при подключении к публичным сетям рекомендуется пользоваться VPN сервисами. VPN сервисы создают защищенный туннель между вами и серверами поставщика VPN услуг. Все данные в таком туннеле тоже шифруются надежными алгоритмами шифрования. Услуги VPN предоставляют даже некоторые браузеры, например Opera или Яндекс.Браузер. Так же есть специальные расширения для браузеров и настольные приложения. Правда, при работе через VPN скорость ощутимо падает, но безопасность данных того стоит. Кстати, о том, что такое VPN и как он обходит блокировки можно почитать в нашей статье Ну а напоследок, просто быть повнимательнее. Не нужно подключаться к первой попавшейся беспроводной сети с подозрительным названием. Если вы сидите в кафе, то название точки доступа обычно совпадает с названием объекта. Правда, подмену SSID никто не отменял, но для этого нужно вырубить роутер, безопасность которого забота сотрудников ИТ отдела данного объекта. Безопасного интернет-серфинга!
img
Сегодня мы обсудим разницу между технологией VPLS и MPLS, хотя оба эти метода используются для подключения клиентских сетей по всему миру. VPLS – сервисы виртуальной частной службы локальной сети и MPLS- мульти протокол с меткой переключения. VPLS vs. MPLS VPLS — это многоточечное подключение на основе технологии ETHERNET IP-сетей или оно может быть выполнено по сетям MPLS. VPLS — это один из способов подключения сетей, которые могут быть point to point или point to multipoint, или может быть тип подключения по IP-сетям multipoint to multipoint. Рис. 1 Базовая архитектура VPLS Если вы проанализируете подключение VPLS, то это подключение основано на технологии ETHERNET между сетями. Это означает, что подключение между сетями осуществляется на уровне L2. Все службы в VPLS, по-видимому, находятся в одном и том же сегменте локальной сети. VPLS использует пограничные маршрутизаторы, которые могут обучаться, соединяться и реплицироваться на основе VPN. Эти маршрутизаторы соединены полно связной сетью туннелей, что позволяет подключаться к любому каналу связи. С другой стороны, MPLS — это метод (это может быть L2 или L3) для подключения сетей по всему миру. В случае MPLS маршрутизация на границе (используемый протокол маршрутизации WAN-главным образом BGP, для подключения связи маршрутизатора PE-CE) и коммутация или маркировка используются в ядре. Таким образом, имеется в виду, что связь между PE-CE осуществляется через протокол маршрутизации (в случае, если используются сервисы MPLS L3), а PE-PE использует коммутацию меток внутри ядра (подключение MPLS L2 или L3). В случае услуг MPLS L2 технология, используемая между PE-CE, может быть Frame-Relay, ATM или любым другим соединением L2. Рис. 2 Подключение MPLS Таким образом, тег MPLS находится между L2 и L3 в модели OSI. Правильно говорят, что MPLS — это технология, а VPLS — это сервис, который использует технологию MPLS для подключения в качестве базовой службы. MPLS использует путевую карту и качество обслуживания с высокой доступностью. Краткое описание разницы: MPLS — это технология, в то время как VPLS — это сервис на вершине IP-сети или MPLS. VPLS — это соединение L2 между сетями, в то время как MPLS — это технология внутри поставщика услуг, и пользовательское соединение может быть L3 или L2 в зависимости от требования. VPLS использует интерфейсы ETHERNET для подключения между сетями, в то время как MPLS может быть запущен с любым типом интерфейсов С помощью MPLS вы можете иметь путевую карту и качество обслуживания, VPLS не может использовать путевую карту. VPLS обычно используется в промышленности, где клиент хочет, чтобы информация L2 передавалась по IP-сетям, в то время как MPLS может использоваться в обоих случаях, когда информация L2 или L3 может передаваться по сети MPLS. VPLS может быть point to point или multipoint соединением VPLS, в то время как MPLS является полностью сетчатой технологией и может использоваться для обмена информацией между сетями на основе требований заказчика (использование RT на месте для импорта и экспорта маршрутов с конкретными PE-маршрутизаторами) VPLS использует методы мостового соединения IEEE 802.1 q Ethernet, а ядро MPLS будет использовать полную сетку PW и переадресацию «split-horizon».
ОСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59