Microsoft открыла код BASIC 6502, запустившего Commodore и Apple II

Microsoft открыла код BASIC 6502, запустившего Commodore и Apple II

Microsoft открыла код BASIC 6502, запустившего Commodore и Apple II

Microsoft выложила на GitHub полный исходный код Microsoft BASIC для процессора 6502 — версии 1.1 от 1978 года, на которой работали такие легендарные машины, как Commodore PET, VIC-20, Commodore 64 и Apple II. Теперь 6 955 строк ассемблерного кода доступны под лицензией MIT — каждый может изучать, использовать и даже изменять софт, с которого фактически начиналась революция персональных компьютеров.

Написанный Биллом Гейтсом и Риком Вейландом интерпретатор BASIC стал для миллионов людей в конце 70-х и начале 80-х первой возможностью «поговорить» с компьютером напрямую.

Простейшие команды вроде 10 PRINT "HELLO" и 20 GOTO 10 превращались в бесконечный поток текста на экране — и в первый опыт программирования для целого поколения.

Особенность кода в том, что он умещался в смешные по нынешним меркам объёмы памяти, когда каждый килобайт стоил сотни долларов. Процессор MOS 6502 обходился всего в $25, а его конкуренты — в восемь раз дороже. Поэтому именно этот чип стал сердцем домашних компьютеров и игровых приставок, от Atari 2600 до NES.

Интересная деталь из истории: Commodore в 1977 году заплатила Microsoft всего $25 000 за бессрочную лицензию на использование BASIC — без отчислений за каждую проданную машину. Учитывая миллионы Commodore PET и C64, выпущенные позже, в Redmond наверняка вспоминают этот контракт с лёгкой грустью.

В опубликованной версии 1.1 уже есть исправления и оптимизации, сделанные в 1978-м совместно инженером Commodore Джоном Фигансом и самим Гейтсом. Код поддерживал условную компиляцию — по сути, из одной кодовой базы собирались варианты и для Apple II (Applesoft BASIC), и для KIM-1, и для других систем.

Зачем это всё сегодня? Для энтузиастов ретрокомпьютеров — это шанс прикоснуться к «чистому» историческому артефакту, увидеть, как программисты выжимали максимум из железа с минимальными ресурсами. Эти приёмы до сих пор актуальны, когда речь идёт об оптимизации — будь то смарт-часы или спутники.

Microsoft в последние годы регулярно открывает старый код: раньше компания публиковала исходники GW-BASIC, MS-DOS 4.0 и даже самого первого Altair BASIC. Для корпорации, которая когда-то называла Linux «раковой опухолью» и «коммунизмом», это настоящая метаморфоза. А теперь — ещё и красивый жест: в Git-репозитории у исходников BASIC стоят фиктивные временные метки коммитов от июля 1978 года.

Сложный бесфайловый троян ShadowHS незаметно захватывает Linux-системы

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

По данным Cyble Research & Intelligence Labs, ShadowHS — это сильно модифицированная и «вооружённая» версия утилиты hackshell.

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

Цепочка заражения начинается с многоступенчатого шелл-загрузчика, в котором полезная нагрузка зашифрована с помощью AES-256-CBC. После запуска загрузчик проверяет наличие зависимостей вроде OpenSSL, Perl и gzip, определяет контекст запуска и только затем восстанавливает пейлоад через сложную цепочку декодирования. Исполнение происходит напрямую из памяти — через /proc/<pid>/fd/<fd>, без следов в файловой системе.

 

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

ShadowHS активно проверяет наличие корпоративных средств защиты — от CrowdStrike Falcon и Sophos Intercept X до Microsoft Defender, Elastic Agent, Wazuh, Tanium и агентов облачных провайдеров. Для этого используются проверки файловых путей, статусов сервисов и анализ состояния системы. Параллельно вредонос «зачищает территорию»: он ищет и завершает процессы конкурирующих семейств зловредов, включая Kinsing, Rondo и печально известный бэкдор Ebury, а также выявляет следы руткитов и прежних компрометаций.

Отдельного внимания заслуживает механизм вывода данных. Вместо стандартных SSH, SCP или SFTP ShadowHS использует пользовательские туннели GSocket. Передача файлов идёт через заранее заданную точку rendezvous и маскируется под локальные соединения, которые фактически перехватываются GSocket до попадания в сетевой стек. Такой подход позволяет обходить файрволы и средства сетевого мониторинга, не создавая очевидных сетевых сессий.

Если оператор решает активировать «тяжёлые» модули, ShadowHS способен развернуть сразу несколько вариантов криптомайнинга — от XMRig и XMR-Stak до GMiner и lolMiner. Для латерального перемещения он подтягивает инструменты вроде Rustscan. В коде также заложены модули для кражи AWS-учёток, SSH-ключей, данных из GitLab, WordPress, Bitrix, Docker, Proxmox, OpenVZ и облачных метаданных-сервисов — пока они остаются «спящими».

Из-за полностью fileless-архитектуры традиционные сигнатурные средства защиты против ShadowHS почти бесполезны. Эффективное обнаружение требует анализа поведения процессов, мониторинга исполнения в памяти и телеметрии на уровне ядра. Эксперты рекомендуют уделять внимание аномальной генеалогии процессов, подмене аргументов запуска и нетипичному использованию механизмов вроде memfd.

RSS: Новости на портале Anti-Malware.ru