Эти глаза напротив
2006-08-22 04:12 pmЭпиграф:
Имейте в виду: всякая история хочет быть рассказанной, как всякое семечко хочет прорасти. Когда человек носит в себе слишком много нерассказанных историй, он начинает сутулиться, голова его ноет по утрам, а сны начинают повторяться одно и то же, из ночи в ночь, сущий кошмар.
Наверняка все из нас в разное время становились объектами розыгрышей со стороны сослуживцев, когда добрых, а когда - не очень. Эта история - об одном из таких розыгрышей, а был ли он добрым или нет - судить вам, дорогие читатели :)
Где-то на заре 2000-го года мне довелось самым непосредственным образом участвовать в проекте по внедрению достаточно большого UNIX-based програмно-аппаратного комплекса. GUI для управления и мониторинга этим комплексом были "толстыми" X11-клиентами, которые приходилось использовать "по сети".
Для незнакомых с технологией (это существенно для понимания шутки) поясню, что повсеместно используемая на UNIX-ах графическая система X11 позволяет запускать приложение на удаленной машине так, что его интерфейс будет рисоваться на экране вашей рабочей станции (по сети будут посылаться команды X11, описывающие, что и как надо отобразить в окне приложения - там квадратик закрасить, тут строчку вывести, и т.п.). Нечто вроде terminal client под windows, но отрисовывается не весь удаленный десктоп, а окно одного приложения.
И вот я у себя на рабочей станции настраиваю все для удобной работы с этим самым програмно-аппаратным комплексом. Поскольку он состоит из нескольких машин, я решаю, что я буду у себя запускать Xnest, в котором с помощью XChooser выбирать, на какую из машин я буду логиниться.
Я запускаю "Xnest :1 -indirect localhost" и вижу (помимо интересных мне машин) еще несколько. Часть из них я узнаю по hostname-ам - это рабочие станции моих коллег, а часть мне незнакома. Быстрая проверка с помощью "DISPLAY=remote_hostname:0 xdpyinfo" показывает, что одна из незнакомых машин позволяет подключаться к ее X-серверу без всякой аутентификации. Другими словами, можно запустить произвольное приложение и попросить его отрисовать свой интерфейс на экране этой незащищенной машины, и это произойдет.
Развитие событий напрашивалось само собой. В то время еще не прошло и года с тех пор, как вышла "Матрица" и строчка "Wake up, Neo" узнавалась и отождествлялась с фильмом абсолютно однозначно.
На одном из общедоступных UNIX-серверов под безликим account-ом навроде "test" в cron для исполнения раз в пять минут вешается скрипт следующего содержания:
Тот, кто сидит за дисплеем удаленной машины, при этом видит следующее: сначала у него на экране появляется окошко-сообщение "Wake up, Neo. Matrix watches you" с кнопокй "Huh?", а через три секунды оно исчезает и появляются ОГРОМНЫЕ, во весь экран, глаза, которые следят за курсором мыши. Что-то вроде вот этого, но гораздо больше :)

Даже если же приложение с глазами будет закрыто, через пять минут cron запустит скрипт еще раз, и все повторится сначала :)
Для наблюдения за жертвой использвалось приложение xtv, позволяющее в реальном времени наблюдать все, что творится на несекьюрной машине. Довольно быстро выяснилось, что несекьюрный X-сервер был установлен у одного из наших администраторов, который использовал его для мониторинга работы серверов под управлением SunOS. Глаза довольно быстро вывели его из себя, и он стал искать источник напасти.
По какой-то причине он не сразу догадался посмотреть по "netstat", с какого хоста в сети к нему приходит напасть, и ограничился тем, что методично прибивал "глаза" по мере их появления. Тогда из скрипта была убрана проверка на то, что "xeyes" уже запущены и опция по "максимизации" глаз, а интервал запуска - сокращен до минуты. Получилось что-то вроде вот этого:

Впрочем, не прошло и трех часов, как админ выследил хост, с которого лезли "глаза", вынес строчку из крона, настроил у себя xauth и пришел ругаться со мной ...
Мораль: не открывайте доступов больше, чем реально нужно :)
Имейте в виду: всякая история хочет быть рассказанной, как всякое семечко хочет прорасти. Когда человек носит в себе слишком много нерассказанных историй, он начинает сутулиться, голова его ноет по утрам, а сны начинают повторяться одно и то же, из ночи в ночь, сущий кошмар.
Наверняка все из нас в разное время становились объектами розыгрышей со стороны сослуживцев, когда добрых, а когда - не очень. Эта история - об одном из таких розыгрышей, а был ли он добрым или нет - судить вам, дорогие читатели :)
Где-то на заре 2000-го года мне довелось самым непосредственным образом участвовать в проекте по внедрению достаточно большого UNIX-based програмно-аппаратного комплекса. GUI для управления и мониторинга этим комплексом были "толстыми" X11-клиентами, которые приходилось использовать "по сети".
Для незнакомых с технологией (это существенно для понимания шутки) поясню, что повсеместно используемая на UNIX-ах графическая система X11 позволяет запускать приложение на удаленной машине так, что его интерфейс будет рисоваться на экране вашей рабочей станции (по сети будут посылаться команды X11, описывающие, что и как надо отобразить в окне приложения - там квадратик закрасить, тут строчку вывести, и т.п.). Нечто вроде terminal client под windows, но отрисовывается не весь удаленный десктоп, а окно одного приложения.
И вот я у себя на рабочей станции настраиваю все для удобной работы с этим самым програмно-аппаратным комплексом. Поскольку он состоит из нескольких машин, я решаю, что я буду у себя запускать Xnest, в котором с помощью XChooser выбирать, на какую из машин я буду логиниться.
Я запускаю "Xnest :1 -indirect localhost" и вижу (помимо интересных мне машин) еще несколько. Часть из них я узнаю по hostname-ам - это рабочие станции моих коллег, а часть мне незнакома. Быстрая проверка с помощью "DISPLAY=remote_hostname:0 xdpyinfo" показывает, что одна из незнакомых машин позволяет подключаться к ее X-серверу без всякой аутентификации. Другими словами, можно запустить произвольное приложение и попросить его отрисовать свой интерфейс на экране этой незащищенной машины, и это произойдет.
Развитие событий напрашивалось само собой. В то время еще не прошло и года с тех пор, как вышла "Матрица" и строчка "Wake up, Neo" узнавалась и отождествлялась с фильмом абсолютно однозначно.
На одном из общедоступных UNIX-серверов под безликим account-ом навроде "test" в cron для исполнения раз в пять минут вешается скрипт следующего содержания:
Если в числе активных процессов нету "xeyes", то выполняем: DISPLAY=ip-незащищенной-машины:0 xmessage -nearmouse -buttons "Huh?" -timeout 3 "Wake up, Neo. Matrix watches you" && xeyes -geometry 1600x1200
Тот, кто сидит за дисплеем удаленной машины, при этом видит следующее: сначала у него на экране появляется окошко-сообщение "Wake up, Neo. Matrix watches you" с кнопокй "Huh?", а через три секунды оно исчезает и появляются ОГРОМНЫЕ, во весь экран, глаза, которые следят за курсором мыши. Что-то вроде вот этого, но гораздо больше :)

Даже если же приложение с глазами будет закрыто, через пять минут cron запустит скрипт еще раз, и все повторится сначала :)
Для наблюдения за жертвой использвалось приложение xtv, позволяющее в реальном времени наблюдать все, что творится на несекьюрной машине. Довольно быстро выяснилось, что несекьюрный X-сервер был установлен у одного из наших администраторов, который использовал его для мониторинга работы серверов под управлением SunOS. Глаза довольно быстро вывели его из себя, и он стал искать источник напасти.
По какой-то причине он не сразу догадался посмотреть по "netstat", с какого хоста в сети к нему приходит напасть, и ограничился тем, что методично прибивал "глаза" по мере их появления. Тогда из скрипта была убрана проверка на то, что "xeyes" уже запущены и опция по "максимизации" глаз, а интервал запуска - сокращен до минуты. Получилось что-то вроде вот этого:

Впрочем, не прошло и трех часов, как админ выследил хост, с которого лезли "глаза", вынес строчку из крона, настроил у себя xauth и пришел ругаться со мной ...
Мораль: не открывайте доступов больше, чем реально нужно :)
(no subject)
Date: 2006-08-22 01:17 pm (UTC)(no subject)
Date: 2006-08-22 02:13 pm (UTC)Я тогда был большой фанат RMS, и на всех машинах у меня был одинковый пароль,
совпадающий с username'ом, о чём я громогласно заявлял.
avysk, общаясь со мной по ICQ, пошёл ssh'ем на мой dial-up и начал веселится,
то поменяя мне background, то открывая разные окошки.
Я сообразил минут через пять :)
(no subject)
Date: 2006-08-22 09:09 pm (UTC)(no subject)
Date: 2006-08-22 10:32 pm (UTC)Не совсем, правда понимаю, какое отношение он имеет к одинаковому паролю, совпадающему с юзернеймом.
(no subject)
Date: 2006-08-22 10:43 pm (UTC)(no subject)
Date: 2006-08-23 04:56 am (UTC)..But gradually things got worse and worse, it's just the nature of the way the system had been constructed forced people to demand more and more security. Until eventually I was forced to stop using the machine, because I refused to have a password that was secret. Ever since passwords first appeared at the MIT-AI lab I had come to the conclusion that to stand up for my belief, to follow my belief that there should be no passwords, I should always make sure to have a password that is as obvious as possible and I should tell everyone what it is. Because I don't believe that it's really desirable to have security on a computer, I shouldn't be willing to help uphold the security regime. On the systems that permit it I use the ``empty password'', and on systems where that isn't allowed, or where that means you can't log in at all from other places, things like that, I use my login name as my password. It's about as obvious as you can get. And when people point out that this way people might be able to log in as me, i say ``yes that's the idea, somebody might have a need to get some data from this machine. I want to make sure that they aren't screwed by security''
(no subject)
Date: 2006-08-23 04:53 am (UTC)http://en.wikipedia.org/wiki/Richard_Stallman
(no subject)
Date: 2006-08-22 02:17 pm (UTC)(no subject)
Date: 2006-08-23 07:55 am (UTC)(no subject)
Date: 2006-08-23 07:31 pm (UTC)(no subject)
Date: 2006-08-23 07:49 pm (UTC)(no subject)
Date: 2006-08-23 07:51 pm (UTC)(no subject)
Date: 2006-08-22 02:43 pm (UTC)(no subject)
Date: 2006-08-22 04:09 pm (UTC)(no subject)
Date: 2006-08-23 08:26 am (UTC)Внешне все выглядит нормально, но ничего не работает. Или работает не так :)
(no subject)
Date: 2006-08-23 11:07 am (UTC)После этого админ полез смотреть, как подключена клавиатура, а затем погнался за Колей. Догнал и пинками выгнал из компъютерного зала.
(no subject)
Date: 2006-08-23 08:16 am (UTC)Вызывали display с фотографией Бори Моисеева и подписью "Здравствуй, дружок".