• Апгрейд матрицы ноутбука TN->IPS или как получить из бюджетного ноутбука более продвинутый

      Можно ли купить относительно бюджетный ноутбук с хорошими характеристиками, но дешевле собратьев с IPS матрицей, а потом недорого и быстро заменить TN на IPS?


      Читать дальше →
    • Регулярные выражения в Python от простого к сложному. Подробности, примеры, картинки, упражнения

      • Tutorial

      Регулярные выражения в Python от простого к сложному




      Решил я давеча моим школьникам дать задачек на регулярные выражения для изучения. А к задачкам нужна какая-нибудь теория. И стал я искать хорошие тексты на русском. Пяток сносных нашёл, но всё не то. Что-то смято, что-то упущено. У этих текстов был не только фатальный недостаток. Мало картинок, мало примеров. И почти нет разумных задач. Ну неужели поиск IP-адреса — это самая частая задача для регулярных выражений? Вот и я думаю, что нет.
      Про разницу (?:...) / (...) фиг найдёшь, а без этого знания в некоторых случаях можно только страдать.

      Плюс в питоне есть немало регулярных плюшек. Например, re.split может добавлять тот кусок текста, по которому был разрез, в список частей. А в re.sub можно вместо шаблона для замены передать функцию. Это — реальные вещи, которые прямо очень нужны, но никто про это не пишет.
      Так и родился этот достаточно многобуквенный материал с подробностями, тонкостями, картинками и задачами.

      Надеюсь, вам удастся из него извлечь что-нибудь новое и полезное, даже если вы уже в ладах с регулярками.
      Читать дальше →
    • «Взломайте нас, чтобы было красиво»



        Дисклеймер


        Данная статья отражает личный опыт и мнение её авторов и написана с целью призвать сообщество к обсуждению. Здесь не будут называться имена, ни на кого не будут показывать пальцем.


        Мы попытаемся обратить внимание на то, что считаем проблемой современного российского рынка услуг в сфере информационной безопасности.


        Введение


        Чтобы читателям был понятен контекст, мы решили начать с бэкграунда. Статья написана аналитиком информационной безопасности (мной) и специалистом по тестированию на проникновение (моим коллегой InfiniteSuns ).


        Работая с заказчиками, мы систематически сталкиваемся с непониманием сути оказываемых нами услуг. Нередко это непонимание вызвано тем, что оно перенеслось на заказчика от компании, которая оказывала эти услуги. Однажды в ходе проведения внутреннего пентеста повышение привилегий и устранение средств защиты на предоставленной заказчиком офисной машине вызвало недоумение у начальника службы ИБ.


        Далее в ходе обсуждения выяснилось, что до этого под названием «пентест» заказчику продавали сканирование внутренней сети при помощи «nmap» с параметром «--script vuln». Естественно, в очередной раз заказчик ожидал от пентестеров подобного поведения и искренне удивился, когда они начали захватывать его контроллер домена.

        Читать дальше →
      • DNS сервер BIND (теория)

          Основная цель DNS — это отображение доменных имен в IP адреса и наоборот — IP в DNS. В статье я рассмотрю работу DNS сервера BIND (Berkeley Internet Name Domain, ранее: Berkeley Internet Name Daemon), как сАмого (не побоюсь этого слова) распространенного. BIND входит в состав любого дистрибутива UNIX. Основу BIND составляет демон named, который для своей работы использует порт UDP/53 и для некоторых запросов TCP/53.

          Основные понятия Domain Name System


          Исторически, до появления доменной системы имен роль инструмента разрешения символьных имен в IP выполнял файл /etc/hosts, который и в настоящее время играет далеко не последнюю роль в данном деле. Но с ростом количества хостов в глобальной сети, отслеживать и обслуживать базу имен на всех хостах стало нереально затруднительно. В результате придумали DNS, представляющую собой иерархическую, распределенную систему доменных зон. Давайте рассмотрим структуру Системы Доменных Имён на иллюстрации:
          Читать дальше →
        • Ускоряем раздачу фоток


            С проблемой медленной отдачи статического контента рано или поздно сталкивается каждый сисадмин.

            Проявляется это приблизительно так: иногда 3Kb картинка грузится так, как будто бы она весит 3Mb, на ровном месте начинают «залипать» (отдаваться очень медленно) css-ы и JavaScript-ы. Вы нажимаете ctrl + reload — и уже, вроде, проблемы нет, потом спустя всего несколько минут все повторяется опять.

            Не всегда истинная причина «тормозов» очевидна и мы косо поглядываем то на nginx, то на хостера, то на «забитый» канал, то на «тормозной» или «глючный» браузер :)

            На самом деле проблема в несовершенстве современного винчестера, который до сих пор не расстался с механическими подсистемами вращения шпинделя и позиционирования головок.

            В этой статье я предложу Вам свое решение этой проблемы, основанное на практическом опыте использования SSD дисков совместно с web-сервером nginx.
            Читать дальше →
          • Что думают ваши смартфоны про автомобильные USB-зарядки

            Наверняка многие подметили, что отдельные автомобильные зарядки заряжают смартфоны медленнее, чем сетевые ЗУ. Особенно это касается дешевых моделей. При этом в них можно ткнуть тестером с тарированной нагрузкой и убедиться, что свои положенные вольты и амперы они выдают исправно.



            Причин тому две. Но сначала несколько слов о зарядке «литий-иона», логике работы контроллеров в смартфонах и вранье китайских производителей зарядок.
            Читать дальше →
          • Что делает центральный процессор, когда ему нечего делать

            • Tutorial

            Мужик приходит устраиваться работать на стройку. Его спрашивает мастер:
            — Что делать умеешь?
            — Могу копать…
            — А что еще?
            — Могу не копать…

            Не секрет, что современные процессоры работают очень быстро. Работа их заключается в постоянном извлечении из памяти инструкций и выполнения предписанных в них действий. Однако оказывается, по тем или иным причинам часто требуется притормозить этот процесс. В прикладных программах редко приходится задумываться о том, что при этом происходит с процессором. Но вот для создателей системного софта это далеко не праздный вопрос.


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


            В статье фокус делается на программной стороне вопроса состояний процессора. Я не буду концентрироваться на деталях реализации (напряжения, пины, частоты и т.д.), так как 1) они существенно различаются между поколениями и моделями процессоров даже одной архитектуры, тогда как программный интерфейс остаётся обратно совместимым; 2) они не видны напрямую программам и ОС. Это попытка просуммировать информацию, разбросанную по многим страницам справочника Intel IA-32 and Intel 64 Software Developer Manual.


            Начнём с простой и всем знакомой ситуации — процессор включён, бодр и весел.

            Читать дальше →
          • Еще раз о том, как не сделать из своей сети «решето»

            Здравствуйте! Я почти 10 лет работаю в сфере ИТ и ИБ, всегда интересовался практической безопасностью, в настоящее время работаю пентестером. За все время работы я постоянно сталкивался с типовыми ошибками в настройках и дизайне инфраструктуры. Ошибки эти чаще всего досадные, легко устранимые, однако быстро превращают сеть в полигон для взлома. Порой кажется, что где-то специально учат так настраивать, насколько часто они встречались. Это и побудило меня написать данную статью, собрав все самое основное, что может улучшить защищенность.

            В этой статье я не буду рассказывать про использование сложных паролей, максимального ограничения прав доступа, смене учетных записей по умолчанию, обновлению ПО, и других «типовых» рекомендациях. Цель статьи – рассказать о самых частых ошибках в настройках, заставить администраторов и специалистов ИБ задуматься над вопросом – «а все ли в моей сети хорошо?», а также показать, как можно оперативно прикрыть те или иные типовые уязвимости, используя встроенные или бесплатные средства, не прибегая к дополнительным закупкам.

            Инструкций-рецептов намеренно не прикладываю, так как многое ищется очень легко по ключевым словам.
            Читать далее
          • Практика: Как настроить сервер HP ProLiant ML10v2 и подготовить его к установке ОС

              Добрый день, дорогие друзья! Сегодня я хочу представить вам короткий практический обзор, посвященный решению конкретной задачи. А именно первоначальной настройке сервера и установке ОС Windows Server 2012 R2 с помощью фирменных средств развертывания HPE. Делать это я буду на примере популярного сейчас сервера HP ProLiant ML10v2 в следующей конфигурации (парт-номер 814483-421):

              • Башенный сервер 4U
              • Процессор Intel Pentium G3240
              • Встроенный RAID-контроллер HP Dynamic SmartArray B120i
              • В нашем случаем используются 4 диска Seagate LFF — они не входят в комплект самого сервера

              Полные характеристики можно посмотреть здесь.

              Особенность этого сервера, являющегося самым бюджетным представителем семейства ProLiant — отсутствие встроенных средств развертывания Intelligent Provisioning на самом сервере. Поэтому для его первоначальной настройки нужно использовать загрузочную флешку с образом HP Service Pack for ProLiant. Инструкция ниже будет включать в себя такие операции:

              • Подготовка и создание загрузочной флешки (обратите внимание, что работу с Service Pack for ProLiant также можно проделать из удаленной консоли iLO (http://h20564.www2.hpe.com/hpsc/swd/public/detail?swItemId=MTX_4f842ceb31cf48d392e22705a8), смонтировов ISO-образ оттуда
              • Настройка RAID на сервере
              • Обновление программных компонентов сервера (прошивок)
              • Установка ОС Windows Server 2012R2

              Все значимые операции сопровождаются картинками. Ужасное качество картинок служит для достижения эффекта присутствия :)
              Читать дальше →
            • 15 тривиальных фактов о правильной работе с протоколом HTTP

                Внимание! Реклама! Пост оплачен Капитаном Очевидность!

                Ниже под катом вы найдёте 15 пунктов, описывающих правильную организацию ресурсов, доступных по протоколу HTTP — веб-сайтов, «ручек» бэкенда, API и прочая. «Правильный» здесь означает «соответствующий рекомендациям и спецификациям». Большая часть ниженаписанного почти дословно переведена из официальных стандартов, рекомендаций и best practices от IETF и W3C.



                Вы не найдёте здесь абсолютно ничего неочевидного. Нет, серьёзно, каждый веб-разработчик теоретически эти 15 пунктов должен освоить где-то в районе junior developer-а и/или второго-третьего курса университета.

                Однако на практике оказывается, что великое множество веб-разработчиков эти азы таки не усвоило. Читаешь документацию к иным API и рыдаешь. Уверен, что каждый читатель таки найдёт в этом списке что-то новое для себя.
                Читать дальше →
              • Где мои файлы, ROBOCOPY?


                  Каждому администратору Wintel знакома утилита Robocopy. Еще со времен Windows NT4 она вошла в Resource Kit, а начиная с Windows Vista — в состав операционной системы.
                  Зачем нужна Robocopy? Для того чтобы копировать файлы. Много файлов. В основном мы используем ее для миграции файловых серверов или резервного копирования.
                  Есть много интересных вариантов миграции файловых серверов, например, с использованием DFS-R. Но нет ничего проще и надежнее запуска

                  robocopy \\SERV\D$ F:\ /e /copyall /zb /mt:8 /r:1 /W:5 /V /TS /FP /ETA /TEE /LOG:c:\temp\robocopy.txt


                  В финале можно закрыть пользовательский доступ к ресурсу и создать инкрементальную копию, добавив ключ /MIR.
                  Но так ли хороша Robocopy? Хороша ли она настолько, чтобы доверить ей миграцию самых важных файлов?
                  Читать дальше →
                • Восстановление прошивки RAID-контроллеров LSI

                  Доброго времени суток, хабравчане!

                  Я хочу рассказать вам о том, как я восстанавливал прошивку RAID-контроллера LSI MegaRAID после неудачного обновления.
                  Когда эта беда случилась со мной, то информации об этом я практически не нашел, хотя, допускаю, что плохо гуглил.

                  Анамнез


                  В своей работе я уже достаточно давно использую серверы Supermicro, так как у них есть большой выбор платформ, достаточно демократичная цена и приличная надежность.

                  Зачастую, особенно в случае с 1U серверами я беру их уже с интегрированным контроллером LSI MegaRAID.

                  Но проблема с ними заключается в том, что сама Supermicro не очень охотно выкладывает прошивки для встроенных контроллеров, так что я их обычно прошиваю актуальной прошивкой (масло масляное, да) от аналогичного контроллера LSI. Проблем не возникало до этих пор.

                  Недавно привезли несколько серверов с контроллерами LSI 2208 на борту и достаточно старой прошивкой.
                  Т.к. дискретные контроллеры на этих чипах я тоже активно использую, то особо не сомневаясь загрузился с флешки с Linux-ом, запустил привычное:
                  ./MegaCli64 -AdpFwFlash -f mr2208.rom -a0
                  
                  и пошел заниматься дальше своими делами.

                  Когда я в следующий раз обратил взор на терминал сервера, то увидел ту же самую картину, что и была — «Flashing firmware...» и никакого результата. Беда, подумал Штирлиц.
                  Читать дальше →
                • Использование Asterisk для приема данных от охранных систем

                  Несколько лет назад мы перевели охранное предприятие, в котором я тогда работал, с обычной «проводной» телефонии на IP на базе Asterisk. Это была отдельная история, со своими пробами, ошибками, эпическими фэйлами и непрерывным познанием нового. С тех пор в части голосовой связи уже все отлажено, работает без сбоев и в достаточной степени устраивает всех заинтересованных лиц.

                  До последнего времени на проводных линиях работало только пультовое оборудование, в автоматическом режиме принимающее события с охраняемых объектов и передающее их для обработки диспетчерам. И вот, наконец, настал тот час, когда были побеждены собственная лень и административный голем, и функции этих железок тоже были переданы телефонному серверу.
                  Читать дальше →
                • Несколько недорогих способов улучшить свой цифровой быт*

                    *слоган одной очень известной торговой онлайн-площадки: Smarter Shopping, Better Living!

                    Нашалившего ребёнка родители теперь ставят в тот угол, где нет WiFi — из эфира одной популярной радиостанции

                    Помню, когда я пару лет назад покупал очередной смартфон, то слегка удивил консультанта своей методикой выбора устройства: сперва нашёл у известного производителя аккумуляторов варианты с самой большой ёмкостью, и уже по ним смотрел совместимый смартфон. Объясняю консультанту: «нет, спасибо, чехол мне не нужен, я меняю крышку заднего отсека… Потому что когда батарея сдохла, уже не важно, сколько там ядер и какая версия Android...»

                    DISCLAIMER: автор выражает благодарность советской спичечной промышленности за эталон 5см (плюс-минус 1мм по ГОСТ 1820-2001), но никак не аффилирован с торговой маркой «Балабановские Спички»; все появления означенной марки в кадрах непреднамеренны.
                    Чтобы поднять читателю настроение, автор придумал каждому изделию шуточное название и perk на манер популярной компьютерной игры Fallout, специально для Geektimes.

                    Энергия правит этим миром, и пока ключевой фактор прогресса потребительской электроники — ёмкость носимой в кармане батареи. Вот и я смотрю на свой цифровой быт через призму удобной электрификации гаджетов. И пока учёные изобретают топливные элементы (а венчурные фонды считают потенциальные прибыли), вспомним более традиционные способы улучшения своей цифровой жизни, и заодно посмотрим на некоторые забавные аксессуары.

                    Итак, сколько плохих кабелей micro USB вы выбросили за последние пару лет? Лично я уже штук пять. А как понять качество кабеля, если заряд идёт, видимых повреждений нет, да и разъёмчик хорошо сидит? Как комфортнее электрифицировать гаджеты в автомобиле, в самолёте, в лесной глуши и на горной вершине?
                    Читать дальше →
                  • Установка и настройка Asterisk для работы с WebRTC

                    • Tutorial

                    В сети есть много информации и инструкций по теме, но на текущий момент они уже не актуальны и довольно сложны. Во многих случаях используют webrtc2sip но его довольно сложно собрать и заставить работать. Под катом я написал подробную инструкцию как заставить работать WebRTC через Asterisk.
                    Читать дальше →
                  • Почему балансирует бухгалтерский баланс?

                    • Tutorial
                    image

                    Если вам известно, что такое бухгалтерский баланс, можете закончить чтение на этом. Если же баланс ускользнул от внимания, тогда, возможно, вас заинтересует его нехитрое, вместе с тем неординарное устройство.

                    Сейчас я коротко и по возможности доступно объясню, что бухгалтерский баланс такое и с какой стати ему балансировать.
                    Читать дальше →
                  • Почему сегодняшних правообладателей проклянут потомки

                      7 февраля 2013 года Международным альянсом интеллектуальной собственности (IIPA) обнародован отчет, в котором Украина отнесена к «приоритетным странам», т.е. признана страной с самым высоким уровнем пиратства в сфере интеллектуальной собственности. Среди прочих рекомендаций Альянса – усиление ответственности за нарушение авторских прав, увеличение количества милицейских рейдов. Это – только один недавний (но официальный) эпизод, который характеризует глобальную тенденцию среди правообладателей: больше и сильней наказывать. Как сказал Гегель: «Основной урок истории в том, что история ничему не учит». В этом посте я попробую показать то, чему никак не хотят научиться современные правообладатели.
                      Читать дальше →
                    • Работа для программиста в США: 5 простых шагов

                        image Статья про то, что делать тем, кто хочет переехать работать в США. Я предполагаю инженерные позиции, на которые проще всего получить визы, но, возможно, статья окажется полезна и другим специалистам.

                        Мой опыт несколько отличается от нижеописанного (я попала на работу в США после стажировки). Но за 4 года в США пообщалась с людьми, которые попали сюда разными путями и набрала кое-какой опыт. Так что если бы я очень хотела найти работу в США сегодня, то я бы действовала примерно так, как описано ниже.

                        Заранее извиняюсь, если мой тон кому-то покажется наставническим — я не имею амбиций учить других жизни, просто иногда у меня получается такой стиль.
                        Читать дальше →
                      • 5 советов новоиспеченному начальнику отдела

                          Хочу поделиться 5 важными, на мой взгляд, вещами, которые должен осознать специалист, внезапно ставший начальником своего отдела. Это скорее напутствие, психологическая накачка, чем конкретные методики, но как мне кажется, карьерные изменения — момент для изменений внутренних. Мне самому повезло стать начальником нового отдела, созданного из сотрудников, занятых определенным направлением, и вот что я успел для себя уяснить.
                          Читать дальше →