Резервное копирование базы данных на Cron с выгрузкой в облако на примере Яндекс.Диск. Версия 1.

Привет.

Тут я расскажу о самом простом способе создания бекапов БД на сервере, о выгрузке их в Яндекс.Диск. Я написал скрипт, который всё это выполняет.

Он приведён поэтапно, можешь скопировать пункты 4.1-4.5, убрав оттуда заголовки, и получишь готовый скрипт. Или можешь скачать, ссылка будет в конце. А лучше прочитать пост и вникнуть в суть происходящего.

ОС на сервере — CentOS 6.7
Версия СУБД — MySQL 5.5 (да, знаю, старая)

Дыры (обновлено в 01:50 09/12)

Сегодня поделился с девушкой ссылкой на статью ИнформПолиса. Она открыла её на смарте, но Chrome внезапно не пустил:

Я повторил попытку со своего смарта и лицезрел следующее:

Эта страница открывается даже с ПК, и всё, что на ней находится, это картинка, растянутая на 100% ширины и высоты. Код страницы простейший, его может написать любой студент даже с моего факультета.

Переходя по ссылке /mob/?act=go, кликнув на картинке в браузере ПК, меня просто перебрасывает в гугло. А вот ткнув на смартфоне, начинается загрузка приложения. Нужно быть полным долбаном, чтобы ничего не заподозрить, скачать и установить его. 
Скриншоты:

Об этом я уже сообщил администрации сайта. Буду следить за развитием событий.

UPDATE 23:17 06/12

Написал всем корреспондентам, которые указаны в контактах группах Infpol (1, 2), а также через их специальную форму на сайте. Быстрее всего, в 20:46 (через три минуты), отреагировала Татьяна Родионова. Она сказала, что передаст эту информацию техническому директору, и вероятно это связано с некоторыми обновлениями на сайте. В данный момент на сайте стоит заглушка, которая в нашем случае, не может не радовать:

UPDATE 18:56 07/12
После прошлого обновления этого поста сайт ещё висел на этой заглушке. Но потом я не следил, включался ли и с какого момента поставили 403.

UPDATE 01:50 09/12
Как я понял из того, что мне ответили сотрудники ИП, которые работают над пабликом во ВКонтакте, работы на сайте проходят в выходные дни, и порой намного тщательнее, чем по будням. Ведь основной трафик приходится именно на рабочие дни и отключать сайт в это время не комильфо. Получается, что описанная эксплуатирующаяся уязвимость могла быть замечена уже давно и уже входила в планы на эти выходные. А может и не была замечена и её внесли в общий todo-лист. В любом случае, сайт открывался уже в понедельник, 8-го числа, и с мобильника не происходит никаких левых редиректов.
Я не знаю, я ли спровоцировал отключение сайта, но в любом случае, респект админам за исправление, а корреспондентам — за быструю обратную связь.
***
Я, бывает, нет-нет, да столкнусь с таким поведением сайтов, крупных и неочень. Вот другой пример. 
Недавно МЦДО страдал таким же заболеванием. Как только мной обнаружилась эта беда, я сообщил администратору и меры были приняты оперативно. Вот что было тогда:

http://pagesoffers.com/?l=tsk3996sghjru&s=18209567326&z=103929

При открытии страницы происходит простой JS-овский Alert (с названием телефона, что выглядит убедительно) и раздаётся короткая пиликалка, наподобие звука, когда в Марио подобрал монетку.
Самое забавное конкретно в этом случае это то, что страница:
• явно переведена с английского языка (стоит глянуть исходник: английское закомментировано и рядом аккуратно приписано русское) и наверняка сама по себе является каким-то шаблоном, распространяющимся в самом днище интернетов среди желающих нажиться на лохах;
• всё же написана кем-то, кто явно не предусмотрел самого банального варианта развития событий, когда страница открывается на ПК:
Счётчик внизу просто доходил до единицы и останавливался. Ссылка на кнопке «Скачать» выглядит намного интереснее:

http://pagesoffers.com/ref/uban.php?r=YoPTVNKKUW6TJEZexdGhlaJ7K5IRuLazk6qElDA8E8rYQHAPOzSUAfRqS0xSZ6mgXSOvyjQkz0XfdkfFDuefGQpBw3k1HThyyKxcYeaTO0Q5uadBhZ0dV_sqb5AFsyUbohsOQwuTbZ5mqzo5lEaiuNF-VXxzy4rilXhWQ49qGXI
Перейдя по ней, о боги, что же мы видим?

https://play.google.com/store/apps/details?id=com.dianxinos.optimizer.duplay&referrer=af_tranid%3D3R34FRAF9WK28R8W%26clickid%3D18209567326%26af_sub1%3D103929%26c%3DTier1%26pid%3Dpropellerads_int
Извращенцы. Никогда их приложение не скачаю.
Ну и напоследок:
Так что проверяйте свои сайты на дырявость, друзья.

Собственный «облачный» сервис заметок + файловый сервис

Думаю, многие из нас и из вас проводят во Вконтакте довольно много времени. Подписок достаточно, чтобы на твоей главной странице лента представляла собой ежедневный и бесконечный поток контента. Естественно, как полезного и интересного, так и совсем противоположного. Последнее решается просто — фильтрацией (если всё же не хочется удалять какого-то человека из друзей, например). А то, что ты считаешь полезным и интересным, на самом деле может быть точно также отфильтровано кем-то, кто подписан на тебя. Порой хочется сохранить запись у себя на странице, что называется, «чтобы не потерять». Однако стоит лишь представить тот факт, что другим такие записи уже давно осточертели, и сразу понимаешь, что такой контент (явно нацеленный на массовый репост) — уж точно последнее, что ожидают от тебя твои друзья.

Идея проста. Можно создать собственный блокнот внутри Вконтакте. Это имеет много неоспоримых плюсов. Тем более полезным это будет для тебя, чем больше времени (по нужде, по привычке или от безделья) ты проводишь в соцсети:

  • позволяет сэкономить время на сохранении ссылки на понравившийся тебе контент;
  • единый аккаунт для личной страницы и для такого блокнота — конечно, нет нужды в регистрации где-то ещё;
  • простое сохранение информации в блокноте — через кнопку «Поделиться»;
  • возможность коллективной работы;
  • возможность хранения любых документов и любого мультимедиа-контента внутри блокнота с качественным разделением по типу (аудио, видео, фото и т.д.);
  • как следствие — бесплатный «облачный» файловый сервис без ограничений дискового пространства;
  • нет нужды в установке софта (разве что только официальное мобильное приложение), ведь всё работает через любой браузер на любом устройстве;
  • дальше придумай сам 🙂
Когда-то я использовал Evernote. Но это такой страшный и тяжёлый монстр, который создан специально для заметок. Сами заметки как явление (вторая память) не стоят того, чтобы строить для этого такие огромные, распиаренные и неудобные сервисы. Да ещё и с какими-то платными функциями.
Есть Google Keep. Он прост, не требует абсолютно никаких настроек, Android-приложение максимально нацелено на быстрое сохранение чего-либо. Но не все знают как использовать его на ПК, например. А может кому-то завести аккаунт Google мешает паранойя, религия или что-нибудь ещё.
Плюс встаёт необходимость запоминать ещё одну пару логин/пароль, и это касается даже любого подобного сервиса, не только упомянутых выше. А ведь у многих сейчас основной аккаунт именно во Вконтакте. Ну так почему бы не использовать именно то, что находится прямо под носом и предоставляет даже больший и лучший функционал?
После этого абзаца ты сразу всё поймёшь, скажешь «Ну и нахрена такая долгая прелюдия?!», пфффыкнув, закроешь эту страницу, немного погодя придёт мысль «…а ведь и правда…» и ты пойдёшь реализовывать эту идею 🙂 Но я всё же предлагаю дочитать мои рекомендации.
Итак, друзья, всё элементарно. Создаём новое сообщество. Название и адрес уж придумаете сами, но учтите, что это всё же сообщество, и оно будет светиться после репоста (на счётчике репостов оригинального топика). Тип группы обязательно должен быть «Частная» чтобы ты сам полностью контроллировал и самолично предоставлял избранным доступ к содержанию.
Остальные настройки по желанию, в зависимости от того, чот планируется там хранить. Я делал так:

Такие параметры позволяют не заморачиваться с написанием от имени группы, не лишают возможности комментирования и что важно при коллективной работе — никого ни в чём ограничивать, чтобы работать на равных и свободно обмениваться идеями.
Навигация по материалам осуществляется элекементарно — тегами формата #tag@mynotes. Естественно, здесь всплывает порой весьма ощутимый нюанс: при репосте надо обязательно вручную приписывать такие теги (котоорые могут оказаться и довольно длинными!), причём сразу (т.к. после определённого промежутка времени редактирование записи становится невозможным и приписать тег «как-нибудь потом» уже не получится). Но пойми, в этом вся и фишка. Только так можно разметить все заметки по важности/назначению/теме/срочности, а иначе вся навигация сведётся к тупому скроллингу. 
Например, тег #TODO@mynotes в записи будет означать, что надо выполнить указанную задачу. Лайк под этим постом — и задача выполнена. В группе с другими тегами можно выжать буквально всю мощь из одной лишь стены. А есть ещё и обсуждения, и страничка с wiki-вёрсткой и много чего ещё.
Для чего нужны обсуждения, думаю, пояснять не стоит. Но в частном случае, когда сообщество представляет собой только личный блокнот для одного человека, их можно использовать как папку для каких-то закладок (ссылки на страницы, статьи, сайты, чьи-то профили и сообщества).
Ещё один важный нюанс касательно частности группы. Такой тип позволяет репостить записи только кому-то в личку, не на свою страницу и не в другое сообщество. Только личным сообщением. Даже если вы втроём работаете над каким-то проектом или сохраняете интересности в своём тесном кругу, то администратор группы один чёрт только ты 🙂
Фотографии и видео со смартфона можно выгружать туда. Заодно рассортируешь по альбомам и высвободишь немного памяти смартфона.
Не смотря на очевидные плюсы, минус один и весьма существенный. Для некоторых всё же безопасность дороже удобства и он может перевесить всё указанное. Минус как раз в том и кроется, что если кто-то завладеет твоим ВК-аккаунтом (по доверию, например, своей девушке/парню, или в результате банального взлома), то есть огромный риск, что всеми твоими планами на послезавтра, откровенными фотографиями, явками и паролями завладеет третье лицо, а то и весь интернет. Так что если взялся за такое дело, то сначала прими какие-то меры безопасности. Сделать сложнее пароль, привяжи страницу к мобильнику (не будь занудой, твой номер мобильника в интернете никому не нужен, а в данном случае предоставить его в твоих же интересах), смени пароль на email и его тоже привяжи к телефону (если есть контрольный вопрос, то и его настрой внимательно: воспомни, указана ли в твоей анкете твоя мама под девичьей фамилией). Вообще, это стандартные меры безопасности, которые должен предпринимать любой. Сделай это в любом случае, даже если тебе плевать на всю эту затею с заметками.
Скажешь, мол, так ведь всё это очевидно, для этого и задумывались частные группы! Да нифига подобного. Я подумал об этом всём только сегодня днём, а к вечеру уже реализовал.

А ты лично догадывался использовать именно такой подход именно для организации личных дел?

P.S. Вообще, если ты такой нерд, то юзай листочек и ручку. Никогда не подводит. Если ты ещё и параноик, то листочек вообще-то и сжечь можно 🙂

Немного об информационной безопасности, или как я работал с банком

Привет. Хочу рассказать о небольшом наблюдении.
Работал я некоторое время назад на техподдержке банка. Сразу расскажу как это происходило, чтоб ты верно меня понял.
Банк имеет множество филиалов по стране, это понятно. Самому банку наверняка накладно иметь дополнительный штат техподдержки на каждый регион (если не город). Поэтому он заключил договор с подрядной организацией (генподрядчик, ГенП), кстати, имеющей большой опыт в этих делах и не только хорошие логистические связи, но и собственную программную платформу для учёта всего, всех ивсех везде. Но и она работает лишь в Москве, как и «голова» банка, поэтому данный ГенП набрал себе субподрядчиков (СубП). Они уже работают непосредственно по точкам банка на своих территориях. ГенП получает задания от IT-отдела банка и спускает нужным ребятам. Собственно, работа этих ребят из субподряда — выполнять эти задания. Ими могут быть и работа с техникой (выдача, замена, установка, изъятие…), и открытие/перемещение/закрытие стойки или точки продаж (СП или ТП) или клиентского центра (КЦ), + соответствующие документальные и технические работы, консультирование работников в случае чего, а то и обучение некоторым азам. Все работы отчитывались ГенП-ку, а тот — банку. Всё просто. Вот это и есть техподдержка.
Это было со мной уже достаточно давно, однако только недавно я понял одну очень плохую вещь в организации всего этого.

ГенП имеет в своём распоряжении технику банка. Для ТП и СП это ноутбуки двух моделей (не считая одинакового набора периферии, речь не о ней) и часто такие же ноуты стояли в КЦ. Там уже учётки для работников были доменными и контроллировались ГенП. На СП и ТП ноуты были укомплектованы локальной учёткой для сотрудника и отдельной учёткой для саппорта с админскими правами. Такая же была и в домене для работы в КЦ.
Это достигалось одинаковыми образами заранее подготовленной системы. Для каждой модели ноута — своя. И для точек (КЦ или СП+ТП) тоже своя. Т.е. как минимум 4: на один ноут готовые образы, и на другой. Т.о. можно менять их местоположение без особого парева с переконфигурированием: СубП при необходимости бэкапит данные, перезаливает образ и если надо — возвращает данные (но это уже врядли).
А вот самое интересное. Nota bene, так сказать.
Пароли стоят на всех учётках, касперском (тоже центрально управляемом), на скрытом доменном вайфае в КЦ и чёрт знает где ещё.
Саппорт (СубП) знает все пароли в черте своей технической необходимости: от касперыча, той же вафли, своей учётки (у локальной и доменной одинаков), от учётки сотрудника (если не в КЦ, т.е. не доменная) и многое другое. И здесь уже обращаем внимание на мой случай. Так получилось, что пришёл в местную фирму я по (не)случайному знакомству. Т.е. работал неофициально, «на словах», доверии и договорённостях. Разошлись мы так мирно и спокойно (по причине моей тогда ещё заканчивающейся и очень усердной учёбы). Ушёл и всё, никто ничего особо не потерял. Но будь на моём месте кто другой?
Человек, пришедший в СубП организацию, не подписывал бумаги о неразглашении конфиденциальной информации: данные с компов банка, личные данные сотрудников, какая-то служебная банковская инфа, и главное — эти самые пароли от всего и вся. Работает как и я тогда, на честном слове за небольшие деньги. При этом имеет доступ *почти* ко всей банковской инфраструктуре и владеет даже такой информацией, которую не положено знать ни банковским сотрудникам на местах, ни даже региональной администрации (она есть в любом регионе, но ей СубП не подчиняются и вообще работают лишний раз не пересекаясь, ведь не банк возглавляет работу СубП, а ГенП).
Представим ситуацию, что начальник и такой работник не поладили и тот ушёл. Ушёл, а обиду затаил. И под видом всё той же техподдержки придёт завтра в КЦ, сломает всё к чертям и уйдёт. И в тот же день полетит голова именно с плеч босса того серого работника. ГенП пофигу, в принципе, их личные неприязни.
Однако именно с ГенП начинается цепочка, прямо намекающей на неверно организованную информационную безопасность всего банка. Образы готовятся уже с учётками. Доступ к ним получит даже если представитель СубП одного города/региона приедет в другой.
Дальше — СубП как юридическое лицо. Он в ответе за те риски и те беды, которые могут возникнуть для банка вследствие плохой внутренней политики фирмы-СубП. Т.е. именно они на своих местах работают в непосредственной близости от банковских данных, данных клиентов, операций, денег…. Это ладно в других регионах, может где-то всё более или менее официально и серьёзно. Но в моём случае, кроме меня в фирме работал… только её гендиректор. И то, я, как уже сказал, лишь на честном слове получил доступ к банковским секретикам разного срока лишения свободы.
Далее — СубП как физическая субстанция. Все мы люди, в конце концов. Что-то кого-то может не устроить. Понятное дело, какие-то личностные переживания у субподрядчиков совсем пофигу тем, кто спускает задания сверху. Но поверьте, те тоже лишь выполняют свою работу и наверняка тихонько друг друга ненавидят, и своих проблем им хватает больше, чем ваших. Но стоит лишь проколоться в какой-то мелочи субподрядчику и чёрт знает чем всё это может кончиться. И тут даже не в бумагах дело-то… ты человеку доверяешь управление какой-никакой, а банковской техникой. Ты как работодатель не знаешь что возникнет у него на уме, когда узнает пароль от ноутбука на стойке в магазине напротив его дома. И бумажками твоими он подотрётся под той же стойкой (хотя опустим твою возможность ими всё же воспользоваться в суде по назначению).
Я считаю, в такой работе не должно быть слабых мест. Ни у одного работника не должно возникнуть оргазма от ощущения того, что он контроллирует едва ли не все компы банка в своём радиусе. Мало того, что люди, по-моему, обязаны подписывать обязательстива о неразглашении и невозможности утечки никакой попадающей к ним в руки/на флешки информации, так ещё и людей этих обязательно надо садить на испытательный срок месяца в два. В качестве помогайки по небольшим поручениям новобранца можно легко поднатаскать к предстоящей работе, убедиться/огорчиться в его способностях, а он и сам (не)поймёт с чем собирается иметь дело. Всё это приведёт лишь и к более ответственному подбору персонала, хорошему отсеву плохишей и к наименьшими рискам утечки важной информации.
Да, никто ни от чего плохого не застрахован, какие бы меры не предпринимались. Но ведь значительно снизить риски вднх в ваших интересах.
*****
Я до сих пор помню большинство тех паролей. Хотя они и были у меня отдельно сохранены в базе Keepass, однако я их сразу удалил когда в них отпала служебная необходимость. И теоретически, я могу приехать на стойку, сказать «Я из техподдержки, нужно провести плановую замену ПО» и я тот же час получу доступ ко многому.
Подумайте над этим. Может быть, это окажется ваш банк?

Убираем Winlock без LiveCD

Ну, с кем не бывало. Большинство из нас ловили баннеры на рабочий стол. И со мной последний раз это приключилось зимой, уже не помню в каком месяце. Я тогда был в родном городе пока проходил призывную комиссию, и всё это время я пользовался не своим компьютером.

И вот, перед самым отъездом, я записывал последние из скачанных нишяков на флешки и диски, когда внезапно мой десктоп предстал передо мной в совершенно новом виде — без окон без дверей, иконок и пусков — только голые попы и писи.