По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Так как технология VoIP базируется на технологии IP и использует Интернет, она так же наследует все её уязвимости. Последствия этих атак, умноженные на уязвимости, которые следуют из особенностей архитектуры сетей VoIP, заставляют задуматься о способах усиления защиты и тщательном анализе существующей сети IP . Более того, добавление любого нового сервиса, например, голосовой почты в недостаточно защищенную инфраструктуру может спровоцировать появление новых уязвимостей. Риски и уязвимости, наследованные из IP сетей. Плохой дизайн сети Неправильно спроектированная сеть может повлечь за собой большое количество проблем, связанных с использованием и обеспечением необходимой степени информационной безопасности в VoIP сетях. Межсетевые экраны, к примеру, являются уязвимым местом в сети, по причине того, что для правильного функционирования VoIP сети необходимо открывать дополнительные порты, и межсетевые экраны, не поддерживающие технологию VoIP, способны просто оставлять открытыми ранее используемые порты даже после завершения вызовов. Уязвимые IP АТС и шлюзы Если злоумышленник получает доступ к шлюзу или АТС, он так же получает доступ к захвату целых сессий (по сути – возможность прослушать вызов), узнать параметры вызова и сети. Таким образом, на безопасность АТС необходимо обратить наибольшее внимание. Убытки от таких вторжений могут достигать значительных сумм. Атаки с повторением пакетов Атака с повторением пакета может быть произведена в VoIP сети путем повторной передачи серии корректных пакетов, с целью того, что бы приёмное устройство произвело повторную обработку информации и передачу ответных пакетов, которые можно проанализировать для подмены пакетов (спуфинга) и получения доступа в сеть. К примеру, даже при условии зашифрованных данных, существует возможность повторения пакета с логином и паролем пользователем пользователя, и, таким образом, получения доступа в сеть. Риски и уязвимости, характерные для VoIP сетей Подмена и маскировка пакетов Использование подменных пакетов с неправильным IP-адресом источника могут использоваться для следующих целей: Перенаправление пакетов в другую сеть или систему Перехват трафика и атака «man-in-the-middle» (рисунок ниже) Маскировка под доверенное устройство - «Перенос ответственности» за атаку на другое устройство Фаззинг(Fuzzing) - Нагрузка системы пакетами с не полностью корректной информацией , что вызывает ошибки в работе системы при их обработке, например такие как задержки при работе, утечки информации и полный отказ системы Сканирование на предмет возможных уязвимостей - Сканирование портов может дать злоумышленнику начальные данные для проведения полноценной атаки, такие как модели операционных систем, типы используемых сервисов и приложений. При нахождении уязвимого сервиса злоумышленник может получить доступ к управлению всей сетью, и, как следствию, к возможности причинить большой ущерб. Низкая надежность по сравнению с традиционными сетям - Для достижения качественной связи, пакетам, содержащим голосовую и видео нагрузку присваивается высокий приоритет в механизмах качества обслуживания QoS (качества обслуживания). Однако, надежность VoIP и сетей передачи данных стремится к 99,9%, что ниже чем степени надежности в традиционных телефонных сетях, у которых данный параметр стремится к 99,999%. Конечно, разница не столь велика, однако за год эта разница выливается в дополнительные 8.7 часа, во время которых система не работает. Но необходимо понимать, что далеко не каждому предприятию это может повредить. Атаки DDoS(Distributed Denial of Service) - Атаки DoS и DDoS происходят когда злоумышленник посылает крайне большие объемы случайных сообщений на одно или несколько VoIP устройств из одного или нескольких мест (DoS и DDoS соответственно). Атака из нескольких мест используется с помощью «зомби» - скомпрометированные сервера и рабочие станции, которые автоматически посылают вредоносные запросы в соответствии с потребностями злоумышленника. Успешной такая атака считается в момент, когда количество запросов превышает вычислительную мощность объекта, в следствие чего происходит отказ в обслуживании для конечных пользователей. VoIP системы особенно уязвимы для таких атак, т.к они имеют высокий приоритет в технологии обеспечения качества обслуживания QoS, и для нарушения их работы требуется меньшее количество трафика нежели для обычных сетей передачи данных. Примером DoS атаки против именно VoIP сети может быть атака при множественной передачи сигналов отмены или установления вызова, которая так же имеет название SIP CANCEL DoS атака. CID спуфинг - Один из типов атак с подменой пакетов построен на манипуляциях с идентификатором звонящего (Caller ID или CID), который используется для идентификации звонящего до ответа. Злоумышленник может подменить этот идентификатор текстовой строкой или телефонным номером и может использоваться для осуществления различных действий, вредящих сети или владельцу предприятия. Кроме того, в VoIP сетях нет возможности скрыть этот идентификатор, т.к телефонные номера включены в заголовках пакетов в протоколе SIP. Это позволяет злоумышленнику со сниффером пакетов, например tcpdump узнать телефонные номера даже если они имеют параметр «private» у сервисного провайдера. Заключение - Использование IP-телефонии приносит огромное количество пользы для любой организации – решение на базе VoIP более масштабируемы, легко интегрируемы и их стоимость ниже классических решений. Однако, любая организация, внедрив VoIP решение должна быть в курсе возможных угроз и предпринимать всевозможные усилия для увеличения степени информационной безопасности в сети. Были перечислены лишь некоторые методы атак, но необходимо понимать, что часто используются комбинации атак и практически ежедневно разрабатываются новые атаки. Но понятно уже сейчас, что за данной технологией будущее и она вряд ли уступит пальму первенства другой технологии в обозримом будущем.
img
В этой статье посмотрим как можно отправлять электронные письма при помощи Python. Есть и более простые способы это сделать, но мне больше подошел именно следующий вариант. Итак, вот как это выглядит: у вас есть имена и адреса электронной почты некоторой группы контактов. И вы хотите отправить каждому из них письмо, добавив в начале сообщения «Уважаемый [имя]». Для простоты вы можете хранить всю контактную информацию просто в файле, а не в базе данных. Также вы можете сохранить в файл шаблон сообщения, которое вы хотите отправить. Модуль smtplib в Python – это практически все, что вам понадобиться для отправки простых электронных писем без заполнения темы письма или какой-либо еще дополнительной информации. Но, конечно, для настоящих писем вам необходимо заполнить строку темы письма и другую информацию, и, возможно, даже прикрепить изображения или какие-то другие вложения. Вот тут и приходит на помощь пакет email в Python. Имейте в виду, что нельзя отправить сообщение через электронную почту, используя только этот пакет. Вам необходимо совместить email и smtplib. Обязательно ознакомьтесь с подробной официальной документацией для каждого из этих пакетов. Вот четыре основных шага для отправки электронных писем с помощью Python: Настройте SMTP-сервер и войдите в свою учетную запись. Создайте объект сообщения MIMEMultipart и загрузите его с соответствующими заголовками для полей From (От), To (Кому) и Subject (Тема). Добавьте тело сообщения. Отправьте сообщение с помощью объекта SMTP-сервера. А теперь давайте рассмотрим весь процесс. Допустим, что у вас есть файл контактов mycontacts.txt, который выглядит вот так: user@computer ~ $ cat mycontacts.txt john johndoe@example.com katie katie2016@example.com Каждая строка соответствует одному контакту. В каждой строке пишется имя, а за ним следует адрес электронной почты. У меня все сохранено в нижнем регистре. Я оставлю преобразования любых полей или некоторых начальных букв в верхний регистр логике программирования, если это будет необходимо. В Python это все довольно просто. Далее у нас есть файл с шаблоном сообщения message.txt. user@computer ~ $ cat message.txt Dear ${PERSON_NAME}, This is a test message. Have a great weekend! Yours Truly Обратили внимание на ${PERSON_NAME}? Это шаблонная строка в Python. Шаблонные строки можно легко заменить другими строками; в данном примере ${PERSON_NAME} будет заменено настоящим именем человека (вы скоро это увидите). А теперь давайте перейдем к коду Python. Для начала нам необходимо прочитать контакты из файла mycontacts.txt. Мы, кстати, можем обобщить это в отдельную функцию. # Function to read the contacts from a given contact file and return a # list of names and email addresses def get_contacts(filename): names = [] emails = [] with open(filename, mode='r', encoding='utf-8') as contacts_file: for a_contact in contacts_file: names.append(a_contact.split()[0]) emails.append(a_contact.split()[1]) return names, emails Функция get_contacts() в качестве аргумента принимает имя файла. Она откроет этот файл, прочитает каждую строку (то есть каждый контакт), разделит их на имя и адрес электронной почты, а затем добавит их в два отдельных списка. И, наконец, в качестве результата работы функции возвращаются эти два списка. Также нам нужна функция для того, чтобы прочитать шаблон сообщения (такой как message.txt) и вернуть объект типа Template, созданный из его содержимого. from string import Template def read_template(filename): with open(filename, 'r', encoding='utf-8') as template_file: template_file_content = template_file.read() return Template(template_file_content) Как и предыдущая функция, в качестве аргумента она принимает имя файла. Для того, чтобы отправить письмо, вам необходимо использовать протокол SMTP (Simple Mail Transfer Protocol – протокол простого обмена электронной почтой). Как уже упоминалось ранее, у Python есть необходимые для этого библиотеки. # import the smtplib module. It should be included in Python by default import smtplib # set up the SMTP server s = smtplib.SMTP(host='your_host_address_here', port=your_port_here) s.starttls() s.login(MY_ADDRESS, PASSWORD) В приведенном выше фрагменте кода вы импортируете smtplib, а затем создаете экземпляр SMTP, который формирует SMTP-соединение. В качестве параметра он принимает адрес хоста и номер порта, оба эти параметра полностью зависят от настроек SMTP вашего поставщика услуг электронной почты. Например, в случае Outlook строка под номером 4 будет выглядеть вот так: s = smtplib.SMTP(host='smtp-mail.outlook.com', port=587) Для того, чтобы все работало, вам необходимо использовать адрес хоста и номер порта конкретно вашего поставщика услуг электронной почты. MY_ADDRESS и PASSWORD – это две переменные, которые содержат полный адрес электронной почты и пароль от учетной записи, которую вы собираетесь использовать. А теперь самое время получить контактную информацию и шаблон сообщения, используя функции, которые мы определили ранее. names, emails = get_contacts('mycontacts.txt') # read contacts message_template = read_template('message.txt') А теперь давайте отправим отдельное письмо каждому из этих контактов. # import necessary packages from email.mime.multipart import MIMEMultipart from email.mime.text import MIMEText # For each contact, send the email: for name, email in zip(names, emails): msg = MIMEMultipart() # create a message # add in the actual person name to the message template message = message_template.substitute(PERSON_NAME=name.title()) # setup the parameters of the message msg['From']=MY_ADDRESS msg['To']=email msg['Subject']="This is TEST" # add in the message body msg.attach(MIMEText(message, 'plain')) # send the message via the server set up earlier. s.send_message(msg) del msg Для каждого name (имя) и email (адрес электронной почты) (из файла с контактами) вы создаете объект MIMEMultipart, настраиваете заголовки типов содержимого From (от), To (кому), Subject (тема) как словарь ключевых слов, а затем прикрепляете тело сообщения к объекту MIMEMultipart в виде обычного текста. Возможно, вам захочется прочитать документацию, чтобы узнать больше о других типах MIME, с которыми вы также можете поэкспериментировать. Также обратите внимание, что в строке 10 выше я заменяю ${PERSON_NAME} фактическим именем, которое было извлечено из файла с контактами с помощью механизма шаблонизации в Python. В данном конкретном примере я каждый раз удаляю объект MIMEMultipart и создаю его заново при каждой итерации цикла. Как только вы проделаете все это, то сможете отправить сообщение, используя простую удобную функцию send_message() объекта SMTP, который вы создали ранее. А вот и полный код: import smtplib from string import Template from email.mime.multipart import MIMEMultipart from email.mime.text import MIMEText MY_ADDRESS = 'my_address@example.comm' PASSWORD = 'mypassword' def get_contacts(filename): """ Return two lists names, emails containing names and email addresses read from a file specified by filename. """ names = [] emails = [] with open(filename, mode='r', encoding='utf-8') as contacts_file: for a_contact in contacts_file: names.append(a_contact.split()[0]) emails.append(a_contact.split()[1]) return names, emails def read_template(filename): """ Returns a Template object comprising the contents of the file specified by filename. """ with open(filename, 'r', encoding='utf-8') as template_file: template_file_content = template_file.read() return Template(template_file_content) def main(): names, emails = get_contacts('mycontacts.txt') # read contacts message_template = read_template('message.txt') # set up the SMTP server s = smtplib.SMTP(host='your_host_address_here', port=your_port_here) s.starttls() s.login(MY_ADDRESS, PASSWORD) # For each contact, send the email: for name, email in zip(names, emails): msg = MIMEMultipart() # create a message # add in the actual person name to the message template message = message_template.substitute(PERSON_NAME=name.title()) # Prints out the message body for our sake print(message) # setup the parameters of the message msg['From']=MY_ADDRESS msg['To']=email msg['Subject']="This is TEST" # add in the message body msg.attach(MIMEText(message, 'plain')) # send the message via the server set up earlier. s.send_message(msg) del msg # Terminate the SMTP session and close the connection s.quit() if __name__ == '__main__': main()
img
Механизм передачи данных или информации между двумя связанными устройствами, соединенными по сети, называется режимом передачи. Режим передачи также называется режимом связи. Он указывает направление потока сигнала между двумя связанными устройствами. Шины и сети предназначены для обеспечения связи между отдельными устройствами, связанными по сети. Категории режимов транзакций Существует три категории режимов передачи: симплексный режим полудуплексный режим полнодуплексный режим Симплексный режим В этом типе режима передачи связь является однонаправленной, то есть данные могут передаваться только в одном направлении. Это означает, что вы не можете отправить сообщение обратно отправителю, как на улице с односторонним движением. Из этих двух устройств только одно может отправлять или передавать по каналу связи, а другое-только принимать данные. Пример: Симплексную дуплексную передачу можно увидеть между компьютером и клавиатурой. Телевизионное вещание, телевидение и пульт дистанционного управления также являются примерами симплексной дуплексной передачи. Другой пример симплексной передачи включает в себя акустическую систему. Диктор говорит в микрофон, и голос передается через усилитель, а затем на динамики. Преимущество Симплексного режима В этом режиме станция может использовать всю пропускную способность канала связи, поэтому одновременно может передаваться больше данных. Недостаток Симплексного режима В основном коммуникации требуют двустороннего обмена данными, но это однонаправленный обмен, поэтому здесь нет связи между устройствами. Полудуплексный Режим В полудуплексном режиме каждая станция может также передавать и принимать данные. Поток сообщений может идти в обоих направлениях, но не одновременно. Вся пропускная способность канала связи используется в одном направлении за один раз. В полудуплексном режиме отправитель отправляет данные и ожидает их подтверждения, а если есть какая-либо ошибка, то получатель может потребовать от него повторной передачи этих данных. Благодаря этому возможно обнаружение ошибок. Примером полудуплексного режима является рация. В рации с одной стороны говорят в микрофон устройства, а с другой-кто-то слушает. После паузы другой говорит, и первое лицо слушает. Пример: Это как однополосная дорога с двунаправленным движением. Пока машины едут в одном направлении, машины, идущие в другую сторону, должны ждать. Преимущество Полудуплексного режима В полудуплексном режиме вся пропускная способность канала берется на себя любым из двух устройств, передающих одновременно. Недостаток Полудуплексного режима Это вызывает задержку в отправке данных в нужное время, так как когда одно устройство отправляет данные, то другое должно ждать отправки данных. Полный Дуплексный Режим В полнодуплексном режиме связь является двунаправленной, то есть поток данных идет в обоих направлениях одновременно. С обоих концов прием и передача данных возможны одновременно. Полнодуплексный режим имеет два физически отдельных пути передачи, один из которых предназначен для движения трафика в одном направлении, а другой-для движения трафика в противоположном направлении. Это один из самых быстрых способов связи между устройствами. Пример: По телефонной линии два человека общаются друг с другом, оба могут говорить и слушать друг друга одновременно, это полнодуплексная передача. Другой пример - улица с двусторонним движением, движение по которой осуществляется одновременно в обоих направлениях. Преимущество Полнодуплексного режима Обе станции могут отправлять и получать данные одновременно, поэтому емкость канала может быть разделена. Недостаток Полнодуплексного режима Полоса пропускания канала связи делится на две части, если между устройствами нет выделенного пути.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59