Пишем простой модуль ядра Linux

Автор: admin от 4-12-2017, 16:15, посмотрело: 46

Пишем простой модуль ядра Linux

Захват Золотого Кольца-0



Linux предоставляет мощный и обширный API для приложений, но иногда его недостаточно. Для взаимодействия с оборудованием или осуществления операций с доступом к привилегированной информации в системе нужен драйвер ядра.



Модуль ядра Linux — это скомпилированный двоичный код, который вставляется непосредственно в ядро Linux, работая в кольце 0, внутреннем и наименее защищённом кольце выполнения команд в процессоре x86–64. Здесь код исполняется совершенно без всяких проверок, но зато на невероятной скорости и с доступом к любым ресурсам системы.



Не для простых смертных



Написание модуля ядра Linux — занятие не для слабонервных. Изменяя ядро, вы рискуете потерять данные. В коде ядра нет стандартной защиты, как в обычных приложениях Linux. Если сделать ошибку, то повесите всю систему.

Категория: Операционные системы » Linux

 

Используем Bash в SQL-стиле

Автор: admin от 4-12-2017, 08:10, посмотрело: 52

Приветствую! Данная небольшая статья призвана осветить некоторые аспекты применения Bash для анализа файлов в SQL-стиле. Будет интересна для новичков, возможно, опытные пользователи также найдут для себя что-нибудь новое.



Структура задачи:


  • projects


  • project1/ — проекты


    • conf/


      • *.conf — конфигурации построения отчетов по таблицам


    • reports/


      • /

        • report1.json — сами отчеты, содержат статистику по таблицам Apache Hive

        • report2.json




  • project2/

    ...




Надо: найти просроченные отчеты.



Итак, расчехляем Bash, открываем отдельный терминал для man-ов и приступаем)



Всех, кому интересно — прошу под кат.

Категория: Операционные системы » Linux

 

Тестирование LLVM

Автор: admin от 4-12-2017, 06:00, посмотрело: 50

Продолжение. Начало здесь.



Тестирование LLVM


Введение



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

Категория: Операционные системы » Linux

 

Как быстро спроектировать сайт с помощью CSS Grid

Автор: admin от 4-12-2017, 06:00, посмотрело: 54

Как быстро спроектировать сайт с помощью CSS Grid



Модуль CSS Grid — это фантастический инструмент для создания макетов веб-сайтов. Он позволяет вам экспериментировать с макетами быстрее, чем любой другой инструмент, которые я пробовал.



В этой статье я научу вас, как это сделать.



Во-первых, я объясню HTML и CSS, которые нам нужны для этой задачи, которую я разбил на четыре части. Как только вы с этим разберетесь, мы перейдем к экспериментам с макетами.



Если вы совершенно не знакомы с CSS Grid, вам может понадобиться просмотреть мою предыдущую статью Учим CSS Grid за 5 минут.

Категория: Операционные системы » Linux

 

Виртуальная пентест лаборатория

Автор: admin от 4-12-2017, 06:00, посмотрело: 62

Постановка проблемы


Виртуальная пентест лаборатория

Некоторое время назад я решил актуализировать свои знания в пентесте (pentest).

Составил план, который включал, как теоретический аспект, так и практический: применение полученных знаний на практике и закрепление их. С теоретической частью было все понятно: книги, курсы и т.д., в интернете масса материалов и ресурсов – читай не хочу.

Практическая часть должна быть в виде пентест лаборатории с блэк-джеком и непотребствами из нескольких машин с различными уязвимостями.
It all began with this white rabbit...

Категория: Операционные системы » Linux

 

Сколько стоит CRM-система?

Автор: admin от 1-12-2017, 11:20, посмотрело: 144

Если вы хоть раз покупали новый автомобиль, то для вас не будет откровением то, что вещи в конечном итоге обходятся гораздо дороже той суммы, которая была на ценнике и даже кассовом чеке. Но такой опыт почему-то напрочь забывается, когда бизнес решает внедрить CRM-систему или любое другое корпоративное ПО. И начинается череда сюрпризов, разбирательств и споров — почему столько, когда в калькуляторе на сайте было вот столько?! «Вы меня обманываете! Вы накручиваете! У меня нет денег! Да меня финансовый директор убьёт! Да это бюджет Лихтенштейна! Вы что, с ума сошли?!» Нет, не сошли. Наоборот, сели и здраво написали для вас, что к чему.



Сколько стоит CRM-система?

Категория: Операционные системы » Linux

 

О создании пэйлоадов для разных платформ с помощью msfvenom

Автор: admin от 1-12-2017, 11:20, посмотрело: 61

«Голова — лучший антивирус», — эта идея никогда не потеряет актуальности. Для того, чтобы эффективно бороться с компьютерными угрозами, надо знать своих врагов. Среди таких врагов — программы, которые позволяют незаметно подключаться к компьютеру и выполнять с ним некие действия, проще говоря, софт для взлома систем. Полагаем, знание того, как создают подобный софт, хотя бы на базовом уровне, понимание того, как он работает, полезно любому, кого волнуют вопросы компьютерной безопасности. Кроме того, такой софт можно использовать для проверки защищённости собственных систем.



О создании пэйлоадов для разных платформ с помощью msfvenom


Поэтому сегодня мы решили поделиться с вами переводом материала, автор которого рассказывает о том, как создавать и применять пэйлоады, или полезные нагрузки, предназначенные для удалённого управления различными системами, в частности — Windows, Linux и Android, с использованием msfvenom — инструмента командной строки из пакета Metasploit. Сразу хочется отметить, что к тому, что вы узнаете ниже, стоит относиться с осторожностью, помня о том, что несанкционированное проникновение в чужие системы — это неэтично и незаконно.

Категория: Операционные системы » Linux

 

Рисователь биомов: наполняем содержанием огромный мир

Автор: admin от 1-12-2017, 11:20, посмотрело: 61

Рисователь биомов: наполняем содержанием огромный мир

Как преобразовать карту высот с верхней картинки в лес с нижней?



Игры с открытым миром стабильно набирают популярность и находятся на первых местах в списках бестселлеров. Каждая новая игра поднимает планку размеров и сложности мира. Просто глядя на трейлеры последних игр с открытым миром, можно понять, что их цель — создание ощущения огромного масштаба.



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



Если посмотреть на типичную игру с открытым миром, то можно увидеть в действии принцип Парето — 20% контента составляют основной путь игрока, а 80% — это фон. Основной путь игрока должен отличаться высоким качеством и художественным содержанием, потому что игроки проведут на нём большую часть времени. Фоны, в том числе обширные леса или пустыни вокруг главных городов, не требуют такого внимания к деталям. Эти 80% представляют собой отличную цель для умных инструментов размещения содержимого, которые слегка жертвуют качеством и художественным оформлением в пользу скорости и простоты создания контента.

Категория: Операционные системы » Linux

 

Заразить во благо: как мы исполняем паразитный код

Автор: admin от 30-11-2017, 11:05, посмотрело: 53

В последнее время мы много говорим про CRIU – систему живой миграции контейнеров. Но сегодня речь пойдет о еще более любопытной разработке: живом патчинге приложений, а также о библиотеке Compel, которая позволяет вытворять все эти безобразия, придавая гиперконвергентным системам новый уровень гибкости.



Заразить во благо: как мы исполняем паразитный код

Категория: Операционные системы » Linux

 

Вопрос: действительно ли программное обеспечение использует новые наборы инструкций?

Автор: admin от 30-11-2017, 10:55, посмотрело: 48

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

Новые инструкций, такие как Intel Software Guard Extensions (Intel SGX) и Intel Control-flow Enforcement Technology (Intel CET), также способны предоставить абсолютно новую функциональность.



Вопрос: действительно ли программное обеспечение использует новые наборы инструкций?


Хороший вопрос заключается в том, как скоро новые инструкции, добавленные в архитектуру, достигают конечного пользователя. Могут ли операционные системы и другие приложения воспользоваться новыми инструкциями, принимая во внимание, что они, как правило, обеспечивают обратную совместимость и способность исполняться независимо от модели установленного процессора? Много лет назад использование новых инструкций достигалось с помощью пересборки программы под новую архитектуру и добавления проверок, предотвращающих запуск на старой аппаратуре и печатающих что-то вроде “sorry, this program is not supported on this hardware”.



Я воспользовался полноплатформенным симулятором Wind River Simics, чтобы узнать, в какой степени современное программное обеспечение способно использовать новые инструкции, оставаясь при этом совместимым со старым оборудованием.

Категория: Операционные системы » Linux