Как стать автором
Обновить
1
0
Алексей Воронов @ALxVV

Пользователь

Отправить сообщение

Nmap — голливудская звезда

Время на прочтение7 мин
Количество просмотров17K

По неизвестным причинам Голливуд считает Nmap главным инструментом хакеров и пихает его во все фильмы со сценами взлома. Впрочем, это куда реалистичнее дурацкой 3D-анимации, которая использовалась в таких картинах, как «Взлом» Гибсона, «Хакерах», или совсем ужасного варианта из «Пароль “Рыба-меч”». Держите подборку фильмов, где хакеры ломают всё, что можно, с помощью Nmap

Читать далее
Всего голосов 31: ↑30 и ↓1+34
Комментарии23

15 супер полезных примеров команды find в Linux

Время на прочтение9 мин
Количество просмотров92K

Практические примеры, которые приведены в этой статье, помогут вам освоить очень эффективную и крайне полезную команду find.
Читать дальше →
Всего голосов 34: ↑30 и ↓4+34
Комментарии17

Физика в Python с использованием Pymunk

Время на прочтение6 мин
Количество просмотров33K

Физика. Кто-то её любит, кто-то нет, но определённо это неотъемлемая часть нашего существования. В этой статье мы рассмотрим как самому создавать физические симуляции используя всего 2 библиотеки Python.
К концу статьи мы сделаем интерактивную симуляцию взаимодействия тел и поймём основы использования библиотеки Pymunk.

В этом туториале вы сможете создать симуляцию тел как на гифке сверху!

Читать далее
Всего голосов 41: ↑41 и ↓0+41
Комментарии10

Закрепление в Linux. Linux Persistence

Время на прочтение12 мин
Количество просмотров24K

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

Я много внимания уделила тому, насколько та или иная техника может вас выдать. И надеюсь, что аналитики SOC вынесут из статьи хотя бы несколько вещей, на которые стоит обращать внимание.

Буду благодарна за любую обратную связь. Если вдруг вы знаете еще какие-то техники или интересные приемы, о которых я не написала, обязательно поделитесь. Потому что процесс закрепления в системе очень творческий. Особенно, если у вас есть права root.

Читать далее
Всего голосов 30: ↑28 и ↓2+35
Комментарии30

Bash-функции и их имена, которые могут быть практически всем чем угодно

Время на прочтение4 мин
Количество просмотров11K


С Bash связано одно распространённое заблуждение, которое заключается в том, что имена bash-функций должны быть составлены по тем же правилам, что и имена переменных. В руководстве по Bash даже даётся следующее определение термина name (имя):

Слово, состоящее исключительно из букв, цифр и символов подчёркивания, начинающееся с буквы или с символа подчёркивания. Такие слова используются в роли имён переменных оболочки и имён функций. Их ещё называют идентификаторами.
Читать дальше →
Всего голосов 31: ↑30 и ↓1+38
Комментарии3

8 команд для Python по работе с файлами и файловой системой, которые обязательно нужно знать

Время на прочтение4 мин
Количество просмотров97K

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

Эта статья предназначена как раз для начинающих разработчиков. В ней описаны 8 крайне важных команд для работы с файлами, папками и файловой системой в целом. Все примеры из этой статьи размещены в Google Colab Notebook (ссылка на ресурс — в конце статьи).
Читать дальше →
Всего голосов 48: ↑34 и ↓14+32
Комментарии15

Прямоугольные тайловые миры

Уровень сложностиСредний
Время на прочтение17 мин
Количество просмотров26K

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

Огромное множество игр на самом деле содержат тайлы - так просто проще представлять игровой мир. Такая упорядоченность помогает геймдизайнерам строить игровые механики, упрощает жизнь художников и делает код программистов понятнее. Самих видов тайлов тоже огромное количество - сегодня поговорим о прямоугольных и изометрических.

Читать далее
Всего голосов 98: ↑98 и ↓0+98
Комментарии13

Почему работать в консоли настолько приятно? Так задумано отцами-основателями Unix

Время на прочтение8 мин
Количество просмотров58K

Кен Томпсон и Деннис Ритчи

Unix. Легендарная операционная система оказала огромное влияние на разработку программного обеспечения и всю информатику в целом. Из неё выросли целые семейства Unix-подобных ОС, которыми все мы пользуемся.

Язык программирования Си, Ричард Столлман и GNU, движение Open Source, Линус Торвальдс с ядром Linux, маки, айфоны и Android. Почти всё в системном программировании 21 века можно отследить до истоков — до Unix.

Unix — это фундаментальная база. Но что же в ней такого особенного? Есть один секрет. Точнее, два.
Читать дальше →
Всего голосов 86: ↑73 и ↓13+90
Комментарии434

Полезные консольные Linux утилиты

Время на прочтение13 мин
Количество просмотров116K

В этой подборке представлены полезные малоизвестные консольные Linux утилиты. В списке не представлены Pentest утилиты, так как у них есть своя подборка.


Осторожно много скриншотов. Добавил до ката утилиту binenv.


binenv — cамая интересная утилита для установки новых популярных программ в linux, но которых нет в пакетном менеджере.

Читать дальше →
Всего голосов 96: ↑92 и ↓4+110
Комментарии110

Настраиваем Vim под Python

Время на прочтение4 мин
Количество просмотров43K
Сегодня я хочу рассказать вам, как я настраивал любимый всеми редактор Vim (который в одном режиме пищит, а в другом — все портит) для написания кода на Python. Статья расчитана на начинающих виммеров.
У меня получилась такая картинка:

Настроить и свой!
Всего голосов 69: ↑65 и ↓4+61
Комментарии61

Как освоить Vim?

Время на прочтение6 мин
Количество просмотров99K
Осваивать Vim — это, пожалуй, страшно. Или, точнее, очень страшно. Речь идёт об изучении совершенно необычного подхода к редактированию кода, не говоря уже о работе с простым текстом. Многие несправедливо обвиняют тех, кто выбирает Vim, в том, что они впустую тратят время.

Я со всей уверенностью могу заявить о том, что Vim позволил мне повысить эффективность в деле написания программ. Работать стало удобнее (ниже я расскажу об этом более подробно). Я никому не хочу навязывать Vim, но очень рекомендую освоить этот редактор всем, кто занимается программированием, работает в сфере Data Science, в общем — тем, кто так или иначе пишет и редактирует некий код.



Если вам очень хочется узнать о том, стоит ли вам использовать Vim, и о том, кто и для чего им реально пользуется — взгляните на этот материал (кстати, не позвольте его названию, «Не пользуйтесь Vim», ввести себя в заблуждение). Ещё можете посмотреть это видео, которое, кстати, подготовил сам Люк Смит.

А теперь, учитывая всё вышесказанное, предлагаю поговорить о том, что такое, на самом деле, Vim!
Читать дальше →
Всего голосов 44: ↑39 и ↓5+51
Комментарии370

25 полезных однострочников Python, которые вы должны знать

Время на прочтение5 мин
Количество просмотров46K

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

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

Читать далее
Всего голосов 26: ↑5 и ↓21-14
Комментарии14

Вычисляем баллистические траектории в играх

Время на прочтение7 мин
Количество просмотров31K

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

Когда возникала эта проблема, я обычно брал ручку с блокнотом и решал её с нуля. Мне это надоело. Чтобы сэкономить себе из будущего немного времени, я выложу это решение в Интернет. Кроме того, я расскажу о необычной «фишке», которую предпочитаю использовать из соображений эстетики.

Уравнения движения


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

Существует четыре основных уравнения движения. В статье мы воспользуемся только одним.
Всего голосов 26: ↑24 и ↓2+25
Комментарии18

Самый беззащитный — уже не Сапсан. Всё оказалось куда хуже…

Время на прочтение8 мин
Количество просмотров547K
{UPD 10.02.2021} Евгений Чаркин дал интервью на эту тему gudok.ru/newspaper/?ID=1552569
Под катом мои комментарии на некоторые тезисы.
{/UPD}

Больше года назад хабравчанин keklick1337 опубликовал свой единственный пост «Самый беззащитный — это Сапсан» в котором рассказывает как он без серьёзных ухищрений получил доступ ко внутренней сети РЖД через WiFi Сапсана.

В ОАО «РЖД» прокомментировали результаты этого расследования. «Есть результаты проверки. Почему удалось взломать? Наверное, потому, что злоумышленник. Наверное, из-за этого… Ну, он из „фана“. Юный натуралист. Там уязвимостей, которые бы влияли на утечку каких-то критических данных, нет. Мультимедийный портал „Сапсанов“ функционирует как положено и не нуждается в доработке», — заявил Евгений Чаркин.

То есть вместо того, чтобы выразить благодарность за обнаруженную уязвимость, автора обозвали «злоумышленником» и «Юным натуралистом».

К сожалению, но специалисты РЖД, начиная с директора по информационным технологиям, отнеслись к статье очень пренебрежительно, проигнорировав важное указание автора:
Также оттуда в сеть РЖД есть впн. Если захотите — найдёте её там сами.

И вот, год спустя я попал в сеть РЖД даже не садясь в Сапсан.



Видимо, только этот котэ добросовестно охраняет вокзал.

Как именно я попал в сеть РЖД с пруфами, чего не сделал директор по информационным технологиям ОАО «РЖД» Чаркин Евгений Игоревич и возможные последствия — под катом.
Читать дальше →
Всего голосов 1135: ↑1132 и ↓3+1447
Комментарии990

Книга «Время UNIX. A History and a Memoir»

Время на прочтение5 мин
Количество просмотров4.9K
image Привет, Хаброжители! Операционная система Unix завоевала мир, чего совсем не могли представить ее создатели, творя историю на последнем этаже Bell Labs в 1969 году. Идея этой ОС оказала колоссальное влияние на разработку программного обеспечения и развитие операционных систем. Вы узнаете о том, как зарождалась система Unix, чем она примечательна и почему занимает столь важное место в компьютерном мире, а также об удивительных людях, вложивших в нее силы и душу. Книга представляет собой честный и остроумный рассказ о жизни айтишного сообщества тех времен — никакой зауми, страниц кода и ссылок. Расслабьтесь и получайте удовольствие, погрузившись в историю, полную приключений и открытий.

Брайан Керниган — автор и соавтор дюжины книг по программированию, включая легендарные «Язык программирования Си» и «Unix. Программное окружение». На протяжении 30 лет был членом той самой группы UNIX в исследовательском центре Bell Labs и не только наблюдал создание UNIX.
Читать дальше →
Всего голосов 12: ↑12 и ↓0+12
Комментарии4

Команда find в Linux – мощный инструмент сисадмина

Время на прочтение5 мин
Количество просмотров251K


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


Команда find – это невероятно мощный инструмент, позволяющий искать файлы не только по названию, но и по:


  • Дате добавления.
  • Содержимому.
  • Регулярным выражениям.

Данная команда будет очень полезна системным администраторам для:


  • Управления дисковым пространством.
  • Бэкапа.
  • Различных операций с файлами.

Команда find в Linux производит поиск файлов и папок на основе заданных вами критериев и позволяет выполнять действия с результатами поиска.

Читать дальше →
Всего голосов 17: ↑11 и ↓6+7
Комментарии12

Новый плацкарт в вагоне габарита Т: помните ту обратную связь, что вы давали на 1-ВМ?

Время на прочтение8 мин
Количество просмотров83K


Привет! В феврале я писал про прототип плацкартного вагона в габарите 1-ВМ, и тогда пост собрал 548 комментариев. ТМХ все их прочитали, как и кучу других комментариев в других местах. И анкеты из выставочного образца, и мнения экспертов со всех выставок. Если коротко, получился небольшой цейтнот: нужно вместить в вагон невмещаемое, потому что удобно ехать вшестером в плацкарте в габарите 1-ВМ довольно сложно. А ещё люди уже долгие годы просят сделать полки длиннее. Что не очень реалистично в заданных условиях. И вот внезапно удалось пересмотреть базовый постулат: то, что ещё недавно считалось технически нереализуемым, получилось сделать. Теперь пассажирский вагон будет в габарите Т. Главная фишка — плюс 28 сантиметров в ширину.

И эти 28 сантиметров дали нам душ в каждом вагоне! Ещё из важного: плацкарты для интровертов а-ля капсульный отель, у каждого пассажира своё собственное окно, отдельный шкаф для белья, регулируемые воздуховоды, УФ-очистка туалетов после каждого использования.

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

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

Начнём с вопроса, почему вдруг стало можно сделать вагон шире, и почему раньше так не делали.
Читать дальше →
Всего голосов 159: ↑158 и ↓1+208
Комментарии888

Мы делаем веб приложения ради экономии — но этот путь ведет нас во тьму

Время на прочтение4 мин
Количество просмотров18K


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

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

Я бы их обстоятельно поругал, но они просто следуют трендам. Где-то когда-то какой-то ооочень большой засранец взял да и сказал: «смотрите ка, если сделать сайт, и пользоваться им как приложением, получится почти то же самое!». И он был прав. Вот только это «почти» — гигантская непреодолимая пропасть.
Читать дальше →
Всего голосов 78: ↑45 и ↓33+25
Комментарии111

Cron в Linux: история, использование и устройство

Время на прочтение13 мин
Количество просмотров94K

Классик писал, что счастливые часов не наблюдают. В те дикие времена ещё не было ни программистов, ни Unix, но в наши дни программисты знают твёрдо: вместо них за временем проследит cron.


Утилиты командной строки для меня одновременно слабость и рутина. sed, awk, wc, cut и другие старые программы запускаются скриптами на наших серверах ежедневно. Многие из них оформлены в виде задач для cron, планировщика родом из 70-х.


Я долго пользовался cron поверхностно, не вникая в детали, но однажды, столкнувшись с ошибкой при запуске скрипта, решил разобраться основательно. Так появилась эта статья, при написании которой я ознакомился с POSIX crontab, основными вариантами cron в популярных дистрибутивах Linux и устройством некоторых из них.


Используете Linux и запускаете задачи в cron? Вам интересна архитектура системных приложений в Unix? Тогда нам по пути!

Читать дальше →
Всего голосов 79: ↑76 и ↓3+73
Комментарии66

Создание favicon для сайта 2020

Время на прочтение10 мин
Количество просмотров142K

Что такое favicon и для чего он нужен?


Favicon – это значок (иконка), который отображается во вкладке браузера, закладках, а также в сниппетах результатов поиска.

image

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

Кроме того, пользователь может добавить страницу вашего сайта на главный экран телефона или сохранить как веб-приложение. В таком случае с помощью favicon можно быстро найти сайт среди большого количества других приложений.

Какой формат использовать для favicon?


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

О каких платформах пойдет речь в этой статье?


  • Десктопные браузеры
  • Chrome на Android
  • Иконка закладки в iOS (PWA)
  • macOS
  • Windows

Читать дальше →
Всего голосов 44: ↑42 и ↓2+46
Комментарии30
1

Информация

В рейтинге
Не участвует
Откуда
Ломоносов, Санкт-Петербург и область, Россия
Дата рождения
Зарегистрирован
Активность