А давайте возьмём простейший процессор и напишем его эмулятор на Python. Будем кормить его бинарниками и дебажить.
Статья для тех, кто всегда хотел разобраться в машинном коде, но боялся начать.
User
А давайте возьмём простейший процессор и напишем его эмулятор на Python. Будем кормить его бинарниками и дебажить.
Статья для тех, кто всегда хотел разобраться в машинном коде, но боялся начать.
Привет. Предположим, вы захотели начать изучать языĸ программирования C++ или, возможно, тех материалов, что уже изучили, вам недостаточно.
Я — Савва, программирую уже больше 7 лет, работаю менеджером команды наставников в Практикуме на курсе «Разработчик С++», а с недавнего времени — разработчиком в Positive Technologies. В этой статье мы с вместе с Практикумом собрали леĸции, ĸниги, курсы и всяĸое таĸое, чтобы шансов выстрелить себе в ногу самостоятельно было меньше :) По C++ существуют и другие подборĸи, но, ĸ удивлению, на Хабре их всего две.
“Электронщики, как учит нас Парацельс, самозарождаются среди паяльников, радиодеталей, универсальных плат и проводов” (@teap0t)
Возможно, это действительно так, но без хорошей книги - учебника или справочника, которые служат катализатором, этот процесс может так и не завершиться. А лучшей книгой для начинающих разработчиков электронных схем и практически библией электронщиков последние сорок лет, считается "Искусство схемотехники" (англ. - The Art of Electronics) Пауля Хоровица и Уинфилда Хилла.
Наблюдение за тем, какие изменения происходят на планете в масштабах стран и континентов — настоящий источник вдохновения для OSINT-аналитиков. Специалисты Бастион поделились актуальным списком интерактивных дашбордов, которые они держат в закладках, плюс я добавил парочку от себя.
Даже если вы никак не связаны с ИБ, зато часами залипали в контурные карты глобальных стратегий или восхищались глобусом в центре управления X-COM, эта подборка инструментов наверняка вам понравится.
Для меня было полной неожиданностью то, что моя первая и пока единственная статья сразу набрала столько положительных откликов. Спасибо всем, кто столь высокого оценил мой первый опыт.
Я не планировал продолжать эту тему, но сейчас вижу, что кое в чем, статью надо дополнить. Это дополнение не будет повторять или расширять статью очередными мыслями и наблюдениями; все это в ней уже есть и добавить мне нечего. Просто, читая комментарии, я понял, что об одной детали я упомянул, но толком не рассказал. Из‑за чего у части комментаторов возникли сомнения в сегодняшней ценности книг, доступных мне в то время, когда я начинал карьеру программиста. Мне кажется, это не очень справедливо и хотя я, бесспорно, не объективен, но, тем не менее, решил немного об этом рассказать.
Я расскажу о тех книгах, что были мне доступны в 1987–1993 гг., т. е. тогда, когда я совмещал работу инженера с программированием. Конечно, я упомяну только те книги, что мне действительно помогли; полный список литературы слишком обширен и упоминание их всех больше походило бы библиотечный каталог, чего я делать не намерен. Условно эти книги можно отнести к одной из нижеследующих категорий. Итак — вот мой «золотой фонд».
Я давний читатель HABR‑а (кажется, с 2011 года), хотя читатель пассивный: даже не был зарегистрирован. Мне казалось, что сотрясать воздух занятие достаточно бессмысленное, а сказать что‑то новое мне особо и нечего. Но последние пару лет на HABR‑е появляется все больше и больше статей, которые условно можно охарактеризовать фразой «как вкатиться в IT». Возможно, я необъективен, но меня не покидает ощущение, что почти все статьи по этой тематике похожи друг на друга. Не дословно, конечно, но общим направлением мысли. Очень редко встречаются статьи где есть конкретика; все больше общие избитые банальные рецепты, которые, надо признать — чересчур универсальны и не могут служить руководством. Особенно
для тех, кто живет в провинции, где нет серьезных разработчиков и где, увы, негде получить необходимый опыт. Можно я расскажу о себе? Мой опыт не универсален, но это реальный опыт. Я не строю иллюзий, что это кому‑то пригодится, но если кого‑то хотя бы подбодрит — уже неплохо.
Чтобы не мусолить и не создавать ненужной интриги, скажу сразу: мне 62 года. Профессиональный стаж программиста 37 лет (с 1987 года). Вероятно, половина
читателей HABR‑а младше 37 лет, с чем я их искренно поздравляю — у вас еще много времени. Образование — высшее техническое (с углубленным изучением
математики). По основной специальности, правда, работал не долго.
Компьютеров в те годы было немного. Да, были «Синклеры», «БК» и еще целый ряд других. Народ вовсю паял свои машины, но у меня руки всегда росли не из того места, так что это увлечение прошло мимо. Тем не менее, мне повезло: КБ, где я работал по распределению, получило машину СМ-4 (клон PDP-11).
Кроме меня и еще одного парня примерно моих лет в КБ не нашлось никого, кому это было интересно. Правда, парню все это быстро надоело и я остался одни на один с этим чудом позднего Советского Союза.
Поскольку блокировки интернета в РФ в последние недели и месяцы многократно активизировались, а маразм все крепчает и крепчает, стоит еще раз поднять тему обхода этих самых блокировок (и делаем ставки, через сколько дней на эту статью доброжелатели напишут донос в РКН чтобы ограничить к ней доступ на территории страны).
Вы, наверняка, помните отличный цикл статей на Хабре в прошлом году от пользователя MiraclePtr, который рассказывал о разных методах блокировок, о разных методах обхода блокировок, о разных клиентах и серверах для обходов блокировок, и о разных способах их настройки (раз, два, три, четыре, пять, шесть, семь, восемь, десять, десять, и вроде были еще другие), и можете спросить, а зачем еще одна? Есть две основные причины для этого.
dnstt — это DNS-туннель (VPN over DNS), который может использовать резолверы DNS через HTTPS (DoH) и DNS через TLS (DoT). Проект написан на языке Go.
Руководство будет включать:
1. Описание работы DNSTT
2. Настройку DNS для домена
3. Настройку туннеля dnstt на сервере
4. Настройку клиента dnstt на OpenWRT
5. Настройку автозапуска сервера, клиента и tun2socks
Несколько лет тому назад я опубликовал на Хабре статью под названием "Буддизм с точки зрения программиста". Этот пост имел огромную популярность, читатели приняли его с большой теплотой. До сих пор я часто получаю от людей сообщения с благодарными отзывами на него и рассказами о том, как после прочтения этого текста поменялись их взгляды на жизнь.
С тех пор многое в моей жизни изменилось. В чём-то я поменял свой взгляд на мир, в чём-то напротив убедился ещё сильнее, в чём-то просто углубил своё понимание. Данный текст - это результат пройденного с момента публикации предыдущего поста пути духовных поисков, последовавших за некоторыми тяжелыми и отчасти трагическими событиями моей жизни. Хотя во многом тема текущего поста перекликается с темой предыдущего, его основная мысль отнюдь не в рассмотрении буддизма, а в поиске смысла жизни с точки зрения рационального ума программиста.
Здравствуйте, меня зовут Сергей, я работаю JavaScript-программистом, и я - буддист. Но совсем не такой, каким вы меня только что представили. Наверняка, при прочтении слова "буддист", в вашей голове всплывает либо образ улыбчивого азиата в оранжевом одеянии, либо образ безработного хиппи-вегана, путешествующего по Индии, занимающегося йогой и ищущего "просветления" в сомнительных религиозных практиках. Так вот, я ни тот, и ни другой. Так кто же я? Чтобы ответить на этот вопрос, нужно для начала поближе познакомиться с историей буддизма.
Около трех с половиной тысяч лет назад Древняя Индия была завоевана ариями - одним из индоевропейских племен, пришедшем в Индию с предгорий Кавказа через территорию современного Ирана. Немного отклонившись от основной темы поста, скажу, что с этим завоеванием связано много интересных фактов. Именно потому, что кроме Индии эти племена завоевали также территории Европы и Ирана, все европейские, персидский и индийские языки родственны друг другу и входят в одну языковую семью. Вы же понимаете санскритское слово "веды" без перевода, верно? И именно по названию места происхождения этих племен в английском языке европеоидная раса называется caucasian race. А также именно по названию этого племени французский граф Жозев Артюр де Гобино дал имя своей печально известной расовой теории, позже популяризованной и претворенной в жизнь Адольфом Гитлером. Но давайте вернемся назад к нашей теме.
В данной серии статей описан процесс создания первого pet-проекта для начинающего инженера в DevOps:
Глава 1: Введение и подготовка стенда
В этой статье я постараюсь достаточно полно и популярно объяснить, что из себя представляют современные радиорелейные станции, исходя из десятилетнего опыта эксплуатации. Исторический очерк о становлении будет в следующей статье.
Ранее мне попадались фрагменты лекций, которые читаются в ряде профильных ВУЗов. И должен заявить, что они имеют мало общего с реальностью и скорее напоминают не всегда качественный перевод европейских стандартов связи. Это является очередным свидетельством отсутствия взаимодействия между научными учреждениями и отраслевыми предприятиями в нашей стране.
Так как отраслевые предприятия до последнего момента были ориентированы на импорт, то в этом нет ничего удивительного. Не удивительно и то, что в свою очередь, на предприятиях сформировалось немало пагубных заблуждений технического характера, которые до сих пор имеют негативные последствия.
Предлагаю вам вместе пройтись по основам и разложить все по полочкам.
Нормы проектирования печатных плат зафиксированы в ряде многостраничных спецификаций, которыми пользуются специалисты. При этом есть нюансы, о которых можно узнать лишь на практике. Проводником в непростой мир изготовления печатных плат для вас станет Александр Патутинский, технолог по подготовке и запуску печатных плат в производство и специалист по DFM- и DFA-анализам.
Цикл из трех статей погрузит вас в тему — от выбора материалов для производства плат до особенностей, которые стоит учесть в конструкторской документации, чтобы защититься от проблем на этапе автоматизированного монтажа компонентов на плате. Вы также познакомитесь с подходами Design for Manufacturing (DFM) и Design for Assembly (DFA), которые Александр постарался доступно объяснить.
Все технологические нюансы проиллюстрированы схемами и примерами ошибок при проектировании (а также вариантов их исправления). Подборка будет полезна и тем, кто хочет комплексно изучить тему проектирования печатных плат, и специалистам, которые уже работают на производстве.
Я долго собирал информацию о том, как организовать свои аккаунты. Как сделать доступ к ним достаточно надёжным и стойким к утере девайсов.
Меня интересовало, как я могу залогиниться туда, где многофакторная авторизация через телефон, в случае потери телефона.
Или, как обезопасить себя от забывания мастер пароля от менеджера паролей? На моей практике я несколько раз забывал пин-код от банковской карты, состоящий из 4-ёх цифр, после ежедневного использования на протяжении многих месяцев. Мозг - странная штука.
В итоге, спустя месяцы изучения темы, я пришёл к следующему сетапу, который решил описать в виде мануала.
Это дополнение к основной статье "Как стать гуру или Wi-Fi Cheat Sheet". Я увидел много откликов по данной теме как положительных, так и отрицательных. Кому-то не нравится подача (да, есть свои минусы, но перенести материал из обычной заметки Markdown достаточно сложно), кому-то инструменты, но кто Я такой, чтобы останавливаться. Сегодня я приложу максимально полный список (для меня) инструментов с кратким описанием.
А что мы знаем про пентест Wi-Fi?
Кажется, что уже всё, но вот на offzone 2023 была представлена атака WPA‑E (Надеюсь, в скором времени выложат запись и pdf) и я задумался, а так ли всё хорошо с моими знаниями... Нет, я всё с концами оставил на старых ЖД и где‑то далеко в памяти, пришлось восстанавливать по крупицам всю информацию. Заметки, время и старания — главное составляющее статьи.
Этот документ больше похож на чек‑лист для самопроверки и может содержать полезные советы и хитрости, за основу я взял структуру «WiFi Penetration Testing Cheat Sheet». Я очень благодарен автору, но он забросил вести данную шпаргалку и многие вещи устарели.
Все было протестировано на Kali Linux v2023.1 (64-битной версии), а также проработано на реальном опыте проведения тестирования на проникновение Wi‑Fi и в лабораторных условиях.
> С 10 апреля 2024, 3 месяца спустя,
> данная статья заблокирована РКН на территории РФ,
> но доступна с IP других стран, а также через веб-архив.
На фоне прошлогоднего обострения цензуры в РФ, статьи автора MiraclePTR стали глотком свободы для многих русскоязычных айтишников. Я же хочу приоткрыть дверь к свободной информации чуть шире и пригласить «не‑технарей» («чайников»), желающих поднять личный прокси‑сервер для обхода цензуры, но дезориентированных обилием информации или остановленных непонятной технической ошибкой.
В этой статье я описал универсальное решение, которое обеспечивает прозрачный доступ к международному интернету в обход цензуры, использует передовые технологии маскировки трафика, не зависит от воли одной корпорации и главное — имеет избыточный «запас прочности» от воздействия цензоров.
Статья рассчитана на «чайников», не знакомых с предметной областью. Однако и люди «в теме» могут найти нечто полезное (например, чуть более простую настройку проксирования через CloudFlare без необходимости поднимать nginx на VPS).
Если у вас ещё нет личного прокси для обхода цензуры — это знак.
В этой статье я расскажу о том, как я выстроил работу с терминалом в Linux под себя и какие инструменты использовал для этого.