Как я учился в универе (сага об инфах)
Расскажу вам эпическую историю, о том как я учился в универе на учителя информатики. Не сказать чтобы это было особенно давно. Поступил в ВУЗ я немного позднее остальных, мне было 21 (2010 год) а закончил учёбу я соответственно в 2014. С тех пор прошло всего 3 года, так что наши весёлые студенческие дни еще свежи в моей памяти ))
Первый курс, мы еще не понимали чем обучение в ВУЗах отличается от школы, поэтому усиленно учились, хоть программа первого курса и была довольно общего характера. Параллельно с учёбой мы собирались с однокурсниками на квартирах попить пиво, что было довольно часто. Бывало приходили на пары пьяненькие, и даже отвечали на пятерку при этом. Надо сказать наша группа учителей информатики состояла всего из 5 человек, из них одна девочка, остальные пацаны. Поэтому у нас часто были объединенные пары с другими группами. Особенно запомнился момент, когда на психологии нас с другом, кажется с похмелья учитель попросила рассказать о технологиях будущего. Перед нами было 40 с чем-то девчат - группа психологов, с которыми была объединенная пара. И они должны были быть нашими оппонентами. Помню как рассказывал про экзоскелеты, демонстрируя что каждое движение человека усиливается во много раз, и подкреплял это жестами похожими на удары боксера )) Потом мы с другом начали говорить про ИИ и девочки-психологи начали усиленно с нами спорить. Но инфов с похмелья победить трудно, даже если нас двое, а гуманитариев 40+... В общем-то мы их убедили, что ИИ это будущее человечества, и сделать его вполне реально.
Летом между первым и вторым курсом мы успели поработать, и почувствовать себя взрослыми, поэтому на негласном совете в сентябре второго курса инфами было принято решение бороться с системой. Начали мы с банальной подсказки старшекурсников. Оказалось что в системе электронного тестирования есть ужасная уязвимость, позволяющая при правильно сформированном URL в браузере видеть правильные ответы на тестирование прямо в ходе его процесса. Я не знаю кто писал эту систему тестирования, и было ли это пасхальным яйцом для сообразительных студентов, но радоваться подарку судьбы пришлось недолго. Один из наших друзей спалился, и кто-то из администрации доложил разработчику системы тестирования. Эту глупейшую дырку в безопасности прикрыли, и нам пришлось включать мозг, чтобы не учить скучные предметы. Мы уже привыкли к халяве и сдаваться так просто не собирались.
К тому времени двое из нас, я и Санёк малость умели программировать на великом и ужасном Дельфи. Поэтому после нескольких дней траура по закрытой уязвимости, мы написали кейлоггер, который поставили на все компы в нашей аудитории. Потом мы просили учителей проверить наши оценки, для чего им нужно было зайти в систему тестирования под их учительским паролем. Кейлоггер успешно перехватил нажатия клавиш, и мы получили в своё распоряжение пароли нескольких учителей. Как оказалось, с помощью пароля любого из учителей можно было получить доступ к тестам любого другого учителя, просто поменяв id в адресной строке браузера (система тестирования работала через браузер по локальной сети). Проблема была в том, что нельзя было сразу выкачать необходимые нам тесты целиком, на одной странице был только один вопрос с ответами. Сперва мы сохраняли их вручную, с помощью менее прошаренных однокурсников, аргументировав тем, что вы - двоечники сейчас всё это сохраните, наделаем шпор, и сдадим всё на халяву как раньше. Но потом было принято решение автоматизировать процесс - мы написали парсер, который поочередно ходил по страницам теста, выдирал из них информацию и делал готовые для печати шпаргалки.
Всё было бы замечательно, но бумажные шпаргалки - палево. Некоторых из нас стали ловить за списыванием, поэтому на совете инфов мы подумали что раз мы инфы, то и шпоры у нас должны быть соответствующие. Недолго думая, мы переделали наш парсер так, чтобы он создавал базу данных вопросов и правильных ответов, и сделали маленькую программку с этой базой данных, которая выглядела как заголовок любого окна в Windows, но плавала при этом сверху над всеми окнами. Работала программа очень просто - в тесте который был в браузере мы выделяли и копировали в буфер обмена вопрос, программа отслеживала это действие, и в заголовке окна показывала нам цифру с правильным вариантом ответа. По нажатию колесика мыши, наш фейковый заголовок окна становился невидимым (это на случай если кто подойдет из учителей).
Возникла проблема как доставить нашу чудо-шпору в виде программы на собственный компьютер, где мы сдаем тест. Все USB порты закрывались, биос был запаролен, дисководы аппаратно отключены. Но системные администраторы проглядели факт того, что в самой системе тестирования была внутренняя почта с возможностью вложить файл. По идее эта почта нужна была для заочников, но мы приспособили её для нужд транзита нашей шпоры. За час до тестирования мы приходили с ноутбуком, цеплялись к универской сети, и войдя в систему под своим логином, посылали сами себе письмо с запароленным архивом, в котором лежала наша хитрая шпаргалка-программа. Далее в ходе тестирования мы просто копировали вопросы и смотрели ответы в заголовке окна, которые прога подгружала из спарсенной заранее базы данных.
Все было неплохо до третьего курса, когда учителя заметили что мы часто выделяем и копируем вопросы. Пришлось сделать доработки. Теперь достаточно было нажать Ctrl+A и один раз скопировать все вопросы теста, а потом просто скроллить мышью, наведя на заголовок окна (то есть на нашу шпору которая под него маскировалась). При скролле прога выдавала по очереди пары цифр вроде 12-4 что означало на 12 вопрос правильный вариант ответа - четвертый.
После нового года нас постигла беда - разработчики прикрыли внутреннюю почту в системе. Доставить чудо программу на компьютер стало невозможно в прямом смысле этого слова. Тогда мы иссследовали систему тестирования, заходя с аккаунтов учителей и выяснили что при правильно сформированном URL возможно редактировать тесты в системе. Сперва мы просто ставили после правильных ответов дополнительную точку в конце предложения. Но это продлилось недолго, и было кем-то из учителей замечено. Нам было сказано, что если ещё раз заметят всякие точки и вообще какие-то дополнительные символы в правильных ответах, то нам сделают ата-та, а то и вообще отчислят за манипуляции с системой.
Мы горевали пару недель, а потом коллективный разум решил, что раз в конец правильных ответов нельзя добавлять никаких символов то мы добавим туда банальный лишний пробел. Но просто пробел не получалось добавить, видимо сисадмины учли этот факт. И тут я вспомнил что есть еще один вид пробела, так называемый неразрывный пробел, который можно поставить с помощью нажатия Alt+255 на цифровой части клавиатуры. И наше благое дело халявы продолжило жить. Проставив в конце правильных ответов неразрывные пробелы мы стали абсолютно беспалевными ниндзя. Чтобы узнать какой из ответов правильный мы просто подводили курсор мыши к концу строчки с ответами. Если там стоял наш чудо-пробел, то курсор мыши менялся со стрелочки на вертикальную линию. Если это было делать быстро, то заметить что происходит было практически невозможно.
К концу четвертого курса мы просто издевались над системой, сдавая тестирование за пару минут, тогда как на него выделялось по полчаса. О нас стали ходить легенды среди младших курсов, и мы ходили с таинственными улыбками как постигшие тайное знание.
Ну а на решающем тестировании нам взяли и заменили все тесты в базе данных за десять минут до начала тестирования. Это была такая подлянка со стороны администрации. Но инфы - это инфы. Борясь с системой мы научились и программировать, и думать логически. Поэтому мы просто взяли и успешно сдали последние тесты САМОСТОЯТЕЛЬНО без всяких шпор. И администрация сдалась. Нам были выданы красные дипломы, а когда мы заходим в универ проведать учителей, они всегда улыбаются, и говорят что после вас таких хитрюг больше не было ))