Спонтанное любопытство, 26 октября 2026. Повод — свежая ретроспектива на Хабре о телефонах с определителем номера и исповедь провинциального фрикера 2013 года. Тема оказалась не «ностальгией по Руси», аисторией о том, как одна и та же инженерная идея дала по разные стороны океана два разных типа уязвимости.
Начну с западной половины истории, коротко, потому что она хорошо известна. В телефонных сетях Bell внутриполосная сигнализация: служебные команды станция слушала прямо в разговорном канале, на частоте 2600 Гц. Для набора номера по магистральным трактам использовался многочастотный код «2 из 6» — шесть частот 700, 900, 1100, 1300, 1500 и 1700 Гц, каждая цифра передавалась парой из них. Система была изящной — и имела фундаментальный изъян: она не отличала абонента от оборудования. Абонентский тракт заканчивался там же, где начиналась сигнализация.
Открыл дыру, по легенде, слепой от рождения Джо Энгрессия с абсолютным слухом: он свистел в трубку на 2600 Гц и ловил момент, когда магистраль вставала на ожидание, открываясь тому, кто свистнул. Дальше получилось то, что мы знаем: игрушечный свисток из упаковки хлопьев Cap'n Crunch, прозвище Captain Crunch для Джона Дрейпера, синие коробки в гаражах, юные Возняк и Джобс, торгующие блюбоксами до основания Apple. Эпоху закрыла не полиция, а инженерия: Bell перевела магистрали на общеканальную сигнализацию SS7, служебные команды ушли из разговорного тракта — и свистеть стало нечем.
Теперь перенесёмся через океан. Классическая реакция на слово «СССР»: блюбоксы там были, конечно же, только подпольные. Ответ скучнее и интереснее: классический блюбокс в советской междугородке не работал бы вообще, по архитектурным причинам.
Во-первых, той самой частоты 2600 Гц в магистральных каналах не существовало. Советская междугородная сигнализация 2-ВСК работала по выделенным сигнальным каналам — отдельным жилам или частоте 3825 Гц над речевым спектром, которую вырезали фильтрами. Управление соединением физически не попадало в канал, который слышал абонент. Свисти не свисти — станция в голосовом тракте команд не слушала. Во-вторых, до конца 80-х господствовал декадно-импульсный набор: номер — это не тональности, а серия механических размыканий шлейфа, акустически её не имитируешь. В-третьих, до самой медной пары ещё надо было добраться: домашний телефон до 70-х — привилегия, основная масса страны звонила с переговорных пунктов и таксофонов.
Но вот что занятно. Отбив блюбокс на магистрали, советская система нарисовала точно такую же дыру на другом уровне — на абонентском участке. И дыра эта была не слабее калифорнийской, просто другого жанра.
Электромеханическая АТС не знает, кто звонит. Это не преувеличение, а устройство вещи: декадно-шаговый искатель знает, куда он повернулся, но не знает, кто его повернул. Координатный маркер знает, откуда пришёл вызов, ровно на одну секунду — в момент установления соединения — и забывает навсегда.
А междугородной станции нужно «откуда», и нужно тогда, когда вся первоначальная коммутация уже распалась. Отсюда запрос АОН: физически опознать, какая из тысяч абонентских линий сейчас сидит на исходящем комплекте к АМТС. Для этого от каждого абонентского комплекта тянулся отдельный провод к стативу АОН, а тот по матрице опознавания вычислял номер — единицы, десятки, сотни. Одно передающее устройство обслуживало группу до 2000 номеров и уметь отвечать по 20 линиям одновременно: железо считалось от вероятности, сколько абонентов группы одновременно висит на межгороде. ЛОНИИС делал аппаратуру сначала релейной, потом электронной; первая монография вышла в 1973 году, в 1975-м министерство приказом велело оснащать ею даже сельские станции, а в 1986-м старую декадно-шаговую АТС разрешалось оставлять в строю только при условии, что АОН на неё повешен.
Сам протокол — отдельная красота. Поскольку разговора ещё нет, а «проключённый разговорный тракт» для частотного обмена нужен, советские инженеры не стали придумывать новый линейный сигнал. Они взяли существующий — «Ответ» (вызываемый абонент снял трубку) — и добавили опознавательный признак: чистый тон 500 Гц на 100 мс. Комбинация «Ответ плюс 500 Гц» в предответном состоянии означает не «во Владививостоке подняли трубку», а «междугородка просит назвать номер вызывающего».
Аппаратура АОН слышит запрос (приёмник настроен на полосу 485–515 Гц), опознаёт линию, на 400 мс отключает телефон звонящего от разговорных цепей и высылает пакет. Отсюда, кстати, характерный щелчок в трубке при выходе на 8-ку, который помнит каждый, кто застал аналоговую сеть.
В эфир идёт многочастотный код «2 из 6» — частота та же решётка, что у Bell MF: 700, 900, 1100, 1300, 1500, 1700 Гц. Дальше начинается то, за что я люблю телефонную технику золотом. Передача — безынтервальным пакетом: знак за знаком по ~40 мс, без единой паузы, цикл из 13 комбинаций укладывается в 520 мс. Раз пауз нет, две одинаковые цифры подряд от одной длинной посылки не отличить — поэтому вторая заменяется специальным знаком «повтор»: номер 555-55-55 в эфире звучит как «пять, повтор, пять, повтор...». Номер передаётся задом наперёд — от единиц к старшим разрядам, ровно в том порядке, в котором его собирала матрица опознавания. В начале пакета — категория абонента, и это не анкета, а биллинговый примитив: категория 1 — открытый межгород, категория 3 — восьмёрка закрыта. Пакет циклится, пока принимающая сторона не восстановит все поля; если не восстановила, АМТС спрашивает ещё раз, до трёх попыток. По статистике того времени примерно каждый седьмой междугородный вызов (15%) с первого раза не опознавался — и это считалось штатной ситуацией, а не аварией.
Формат, как выяснилось, оказался живучим донором. В 2008 году, когда на сетях хозяйничал уже ОКС-7 и ISUP, Мининформсвязи выпустило свежие правила применения оборудования АОН — с всё тем же: 500 Гц, «2 из 6», 40 мс, безынтервальный пакет. Старая сеть умерла, а протокол пережил её в сигнальных сообщениях: те же десять категорий АОН пересчитываются в поле «категория вызывающего абонента» российского ISUP и живут там до сих пор.
И вот здесь развилка, на которой алгебра улыбается.
Запрос АОН не привязан к уровню доступа: это просто тон 500 Гц в разговорном канале после сигнала «Ответ». Проверить, кто именно спрашивает — междугородная станция или чей-то домашний телефон, — было физически нечем: различать было нечего. Всё, что нужно бытовому определителю номера, — вовремя снять трубку и задать правильный вопрос правильным тоном.
Так и работала «Русь». Телефон видит вызывной сигнал и, не дожидаясь хозяина, сам замыкает шлейф — с точки зрения станции вы сняли трубку. Ждёт 250–275 мс и посылает 500 Гц на 100 мс. Станционный статив честно делает своё дело: опознаёт линию, отключает аппарат звонящего на 400 мс, высылает «2 из 6». Телефон принимает пакет, отбрасывает категорию, переворачивает цифры, показывает номер — и только потом включает звонок. Звонящему в это время генерируются фальшивые длинные гудки, чтобы он не заподозрил, что его уже «взяли»; маскировка, впрочем, была фуфельной — гудки разных АТС отличались, и по смене гудка бывалого абонента было не обмануть.
Первый бытовой определитель приписывают Игорю Коршуну и Сергею Тимакову — 1989 год, будущие зеленоградские «Телесистемы». Массовым всё это сделала публикация в «Радиолюбителе» (№8, 1991): плата на КР580ВМ80А — советском клоне i8080, которому требовались целых три напряжения питания, — заталкивалась в корпус кнопочного VEF TA-12. Переход на Z80 с одним +5 В упростил плату, программу «Русь» написал Павел Суходольский, версий были десятки, а к 2004 году фирма показала собственный микроконтроллер R100-XP на ядре, совместимом с 8051. Формально «Русь» — это софт. По факту — совокупность технологий, паяных на коленке.
Обратите внимание на симметрию с западом. В обоих случаях уязвимость — это не «дыра в частоте», а недостающая аутентификация в протоколе. Bell не проверяла, кто свистит 2600. Советская АМТС не проверяла, кто задаёт запрос на 500 Гц. Разница лишь в том, на каком участке сети инженеры решили сэкономить: американцы доверяли магистрали абоненту, советские — абоненту станции.
Была ли у АОНа собственная Studio Line, то есть криминальный вектор? Безусловно, и довольно быстро.
Механика та же, что у Джо Энгрессия, только вместо свистка — бытовой магнитофон. Аппаратура АОН на старых АТС выдавала ответ в линию слышимо: многочастотная трель перед зуммером. Провинциальный инженер середины 90-х — человек, который зарабатывал изготовлением и продажей АОНов, ездил за запчастями на радиорынок в Тушино и до интернета не дорос в силу географии, — записал ответ соседней АТС на кассету, разобрал по частотам и попытался проиграть в линию после набора восьмёрки. Первый магнитофон подвёл: несовпадение скоростей и частот. Второй, друга, — сработал. Зумер международной станции в трубке. Междугородный звонок прошёл, а в распечатке товарища из другого города оказался разговор, которого он не вёл.
Дальше — цифровое устройство, конвертирующее набранный номер в тональную последовательность: подсовываешь АМТС чужой квартирный номер, счёт уходит по адресу подставленного. Таксофоны для этого подходили идеально: либо без номера вовсе, либо с категорией 3 — межгород закрыт, но первой успеть ответить на запрос мог кто угодно. В справочной литературе того времени это писали почти открыто: бывают моменты при наборе восьмёрки, когда станционная аппаратура не успевает, — тогда можно передать ложный номер.
Человека этого стоит послушать хотя бы ради финальной цитаты. «Позже я узнал, что это устройство называется Bluebox, и его за 15 лет до меня изобрёл Стив Возняк. Тогда из-за отсутствия у меня интернета я этого не знал — и мне пришлось придумывать всё самому». Это, по-моему, лучшее описание того, как устроены протокольные уязвимости: они не распространяются как знания, они переизобретаются как физика. Кем угодно — школьником из Саратова или инженером из Cupertino, — лишь бы протокол доверял.
Производители «Русей» довели тему до комедии абсурда. Поздние версии умели не только спрашивать, но и отвечать: по запросу с линии — подставить заданный вами номер. Реальный антиАОН 90-х — не «глушилка», а тот из двух телефонов, который первым успел ответить на запрос. Глушилки при этом тоже существовали: схема из «Радиолюбителя» замыкала линию с частотой 12,626262 Гц (да, с такой точностью — автор схемы гордился), и это надо было удерживать кнопкой от 10 до 60 секунд, слушая в трубке треск. Продавцы, надо отдать им должное, честно писали в мануалах: на старых АТС срабатывает в 70–80% случаев, на цифровых вероятность «стремится к нулю». Обратной мерой стал антиантиАОН — телефон, который посылает свой запрос с задержкой, выжидая, пока чужой антиАОН выдохнется. Гонка вооружений на тумбочке, и она кончилась не победой одной из сторон, а приходом цифровой станции, на которой обе технологии умерли одновременно.
А государственный ответ на всю эту самодеятельность читается сегодня почти как анекдот. В 1997-м МГТС насчитала на своей сети 370 тысяч незарегистрированных телефонов с АОН; регистрация стоила 20 тысяч рублей, помесячное пользование — половину абонентской платы, снятие заглушки с линии — 265 тысяч. В 1999-м Госкомсвязи выпустило требования к аппаратам: запрос АОН допускается только после снятья трубки абонентом, а «имитация поднятия трубки с одновременной посылкой имитированного сигнала контроля посылки вызова» — не допускается. Запрещён, если разобраться, единственный способ работы всех «Русей» на свете — миллионы которых стояли в квартирах и выпускались «Огоньком» насчитанными десятками московских фирм. Услугу узаконили как факт, но сделали платной, а потом и вовсе включили в биллинг: правила 2005 года причислили «телефонный аппарат с функцией АОН» к устройствам, чей ответ засчитывается как начало оплачиваемого разговора. Бытовой определитель официально стал пылесосом для денег: кто-то снял трубку не вами — повременка тикает.
Одно недостающее звено осталось разобрать: если классический фрикинг в СССР был технически невозможен, а юридически — опасен (телефония исторически числилась предметом повышенного внимания КГБ, и то, что в Америке тянуло на хулиганство, у нас легкомогло квалифицироваться как государственное преступление), то куда ушла энергия мальчиков с паяльниками?
Ответ — в радиоэфир. Ленинградский «телефонный эфир» 70–80-х — субкультура со сленгом, позывными, «королями эфира» и офлайновыми слётами, которую горком ВЛКСМ то ли сносходительно терпел, то ли тихо поддерживал. Чисто технически это не взлом, а использование эфира как общего чата задолго до IRC; вопрос «была ли в этом идеология» остаётся открытым — автор мемуаров, послушав эфир пару раз, фарцовщиков там не нашёл, только старшеклассников, обсуждающих музыку и знакомства.
Зато 90-е отыгрались за всё сразу. Главное бедствие постсоветской телефонии случилось не на магистрали и не на тумбочке, а в учрежденческих АТС: режим DISA — звонок на заводской номер, пауза, внутренний гудок, код доступа, и ты в межгороде за счёт предприятия. Коды по умолчанию — «9», «0», «1234»; свежепоставленные мини-АТС Panasonic из коммерческих палаток — тот же «1234» в заводской прошивке. Московские номера сканировались на предмет DISA-гудков, коды прозванивались за минуты, трафик продавался через цепочки перекупщиков, а владельцы станций получали счета за переговоры с Науру, которых никто не вёл. Арбитражные суды были завалены исками. Это уже не блюбокс и не АОН — это чистой воды кража трафика, и она закрылась только цифровыми станциями с жёсткой аутентификацией и биллингом реального времени.
Финал истории — редкий случай, когда бюрократия выглядит изящнее инженерии. С 1 сентября 2005 года МГТС включила «цифровой АОН» на западном стандарте CLIP/FSK: номер приезжает между первым и вторым звонком, без всякого снятия трубки и тональных перекличек, 10 цифр вместо 7. Число платящих за услугу за год выросло с 40 до 200 тысяч — в городе, где восемь лет назад насчитали 370 тысяч нелегальных «Русей». Разница между «запрещённым» и «легальным» оказалась чисто ценовой.
Но железо так просто не умирает. Для электромеханических АТС, доживающих в глубинке, 500 Гц и «2 из 6» остающиеся штатным протоколом до самых похорон декадно-шаговой станции. А на полках с радиотелефонами до сих пор стоит двойная пометка «АОН до 7 знаков, Caller ID до 10 знаков» — настоящий артефакт столкновения двух миров: старого, где телефон допрашивает станцию тоном, и нового, где станция сама добровольно называет номер.
Я начинал эту тему с полуфольклорной формулы «советский АОН — это их блюбокс». Она оказалась верной наполовину, и лучший способ понять почему — положить две архитектуры рядом.
Bell доверила сигнализацию разговорному каналу — и получила уязвимость, которую эксплуатировал любой, кто сумел свистеть в трубку. СССР спрятал междугородную сигнализацию от абонента наглухо — выделенные каналы, 3825 Гц, батарейные стыки — и не оставил блюбоксу ни единого шанса. Но на абонентском участке этот же принцип экономии сыграл наоборот: протокол АОН по построению не мог проверить, кто задаёт вопрос. Мы защищаем периметр так долго, что забываем спросить, кто стучится изнутри.
Вторая мораль — про судьбу форматов. Советский АОН разрабатывался под одну задачу (правильно выставить счёт за межгород), а сломали его для того, чтобы счёт выставили не тому. По дороге пристройка успела поработать бильярдным столом для гонки «Русь-антиАОН-антиантиАОН», пережить запреты Госкомсвязи, биллинговые заглушки и собственную легализацию. И в финале — не умереть, а переселиться в ISUP-сообщения, где категории абонентов живут до сих пор. Формат, который построен на простом и честном физическом принципе, дольше всех переживает и свою инфраструктуру, и своих взломщиков.
И третья — самая инженерная. Провинциальный фрикер без интернета восстановил по уши и таблице частот то же, что Джо Энгрессия нашёл свистом: протокол без аутентификации — это приглашение. Уязвимость — не свойство частоты и не свойство страны, а свойство доверия. До тех пор пока каждой стороне канала не придётся доказывать, кто она, любая система будет рано или поздно отвечать на вопросы первого встречного.