Pull to refresh
10
0
Яков Шуваев @91koff

Системный архитектор

Send message

Очевидные 3 правила безопасности

Reading time2 min
Views60K

Правило №1. Делайте все авторизационные куки HttpOnly


Куки с флагом HttpOnly не видны браузерному коду, а отправляются только на сервер. На практике у вас почти никогда нет необходимости получать их содержимое со стороны клиента (если такая необходимость почему-то у вас возникла — пересмотрите архитектуру авторизации, скорее всего, там что-то не так). А вот злоумышленнику, нашедшему XSS — а XSS так или иначе когда-нибудь где-нибудь найдется — отсутствие HttpOnly на авторизационных куках доставит много радости.

Читать дальше →
Total votes 173: ↑140 and ↓33+107
Comments117

Типичная ошибка при установке COOKIE в PHP

Reading time2 min
Views75K
Хочу поделиться одной особенностью при установке значений COOKIE, которую очень часто забывают веб-разработчики.
В моей практике исследования веб-приложений на уязвимости, за 2009-2011 года, данная ошибка встретилась в 87% веб-приложений, написанных на PHP.
Чтобы как-то уменьшить данный показатель, решил написать этот текст.

Речь пойдет даже не о httpOnly флаге, хотя его использование не менее важно и обязательно к применению.
Читать дальше →
Total votes 62: ↑39 and ↓23+16
Comments40

Файлы уходят в облака. Выбираем облако

Reading time4 min
Views127K

После недавних событий по массовому открытию новых облачных хранилищ ваш покорный слуга задался вопросом: «Какие есть сейчас хранилища и куда можно запихнуть свои жизненно необходимые файлы?»
Некоторое время рысканья по хабру/гуглу и прочим конторам привело к следующему списку хранилищ:

Baidu, Bitcasa, Box.net, Dropbox, Google Drive, Microsoft SkyDrive, SpiderOak, Wuala, Яндекс.Диск

В самом конце статьи ищите сравнительную таблицу.
А теперь кратко о каждом сервисе, предоставляемой халяве и клиентах под Windows и Android
Total votes 118: ↑89 and ↓29+60
Comments192

Сотрудник по фамилии Нуль обрушил корпоративное ПО

Reading time1 min
Views21K
Больше года назад на сайте QA по программированию StackOverflow один пользователь попросил помощи по такому вопросу. У них на фирме есть сотрудник по фамилии Нуль (Null). Проблема в том, что из-за него падает корпоративное поисковое приложение, если фамилию сотрудника использовать как поисковый запрос (что в последнее время происходит очень часто). Ошибка:

<soapenv:Fault>
   <faultcode>soapenv:Server.userException</faultcode>
   <faultstring>coldfusion.xml.rpc.CFCInvocationException: [coldfusion.runtime.MissingArgumentException : The SEARCHSTRING parameter to the getFacultyNames function is required but was not passed in.]</faultstring>

Для параметра указан строковый тип данных. Используется WSDL (SOAP). Flex 3.5 Actionscript 3 ColdFusion 8.
Читать дальше →
Total votes 150: ↑136 and ↓14+122
Comments122

Воронка продаж: делаем автоматически обновляемый отчет из базы данных с помощью Excel

Reading time6 min
Views8.8K
Если вы продаете онлайн-сервис, вам, наверное, хотелось бы видеть, что происходит на каждом этапе воронки продаж. Из анализа воронки можно сделать важные выводы: насколько понятен и удобен процесс установки и начальной настройки приложения, как много и какие клиенты становятся активными пользователями сервиса, какой процент переходит с бесплатной версии на платную. Кроме того, по динамике коэффициентов конверсии можно делать вывод об эффективности принимаемых мер для увеличения продаж.

Под катом вы найдете описание некоторых приемов работы с Excel, которые могут быть полезны при анализе массивов данных. Мы расскажем, как мы ведем управленческую статистику по сервису jivosite.ru с помощью сводных таблиц Excel и подключения к MySQL через ODBC на примере отчета по воронке продаж. Предлагаемый способ довольно прост и универсален, с его помощью можно строить красивые отчеты за считанные минуты.
Читать дальше →
Total votes 25: ↑23 and ↓2+21
Comments14

Один конфиг Nginx для работы с кучей разных сайтов

Reading time3 min
Views106K
Если вам приходилось настраивать Nginx под нужды веб-студии, сеошников или киберсквоттеров ;), то уже наверняка знаете про символ подчёркивания в качестве server_name. Тем не менее несколько других небесполезных приёмчиков из моего примера почерпнуть можно.

Чтоб создать новый сайт на сервере с такой конфигурацией, достаточно создать директорию с именем сайта и залить в неё содержимое. А конфигурационный файл остаётся единственным и неизменным.

Конфиг делает следующее:
1. Отрезает «www» от адреса, дабы сервер нашел директорию с сайтом невзирая на эти буквы в URL.
2. Выдаёт отдельную страничку при запросе несуществующего сайта.
3. Делает стандартный редирект на index.php в корне сайта при запросе несуществующего пути.
4. Перенаправляет запрос на php-fpm при вызове .php файлов.
5. Добавляет возможность обработки .htm(l) файлов как PHP.

Читать дальше →
Total votes 67: ↑46 and ↓21+25
Comments28

Fake S3 для офлайновой разработки и экономии денег

Reading time1 min
Views3.5K
Кёртис Спенсер (Curtis Spencer) с коллегами из компании Spool разработали легковесный сервер Fake S3, который ведёт себя как настоящий Amazon S3 и помогает тестировать проекты, не гоняя данные в облако и не тратя деньги на трафик. К тому же, для тестирования Fake S3 надёжнее, потому что работает локально. Спенсер говорит, что благодаря Fake S3 они сэкономили около $1000 за последний месяц на одной только оплате трафика.

Установка

gem install fakes3

Для запуска сервера нужно указать хост и порт

fakes3 -r /mnt/fakes3_root -p 4567

Читать дальше →
Total votes 80: ↑75 and ↓5+70
Comments4

10 лучших инструментов для разработки и администрирования MySQL

Reading time6 min
Views713K
Многие компании создают различные многофункциональные приложения для облегчения управления, разработки и администрирования баз данных.

Большинство реляционных баз данных, за исключением MS Access, состоят из двух отдельных компонентов: «back-end», где хранятся данные и «front-end» — пользовательский интерфейс для взаимодействия с данными. Этот тип конструкции достаточно умный, так как он распараллеливает двухуровневую модель программирования, которая отделяет слой данных от пользовательского интерфейса и позволяет сконцентрировать рынок ПО непосредственно на улучшении своих продуктов. Эта модель открывает двери для третьих сторон, которые создают свои приложения для взаимодействия с различными базами данных.

В Интернете каждый может найти много продуктов для разработки и администрирования баз данных MySQL. Мы решили собрать 10 самых популярных инструментов в одной статье, чтобы вы смогли сэкономить свое время.
Читать дальше →
Total votes 64: ↑61 and ↓3+58
Comments67

Nginx как Reverse Proxy для сайта, использующего SSL

Reading time3 min
Views126K

Введение


Как настроить nginx в качестве frontend к apache и зачем это нужно — написано неоднократно, в том числе и на Хабре. Мой случай немного отличается от классического. Начиналось все как обычно, проект на apache, увеличение количества посетителей и, связанная с ним, недостаточность ресурсов сервера. Но проект использовал SSL для защиты обмена данными с клиентами. С чем я столкнулся и как решил проблемы я расскажу под катом.
Читать дальше →
Total votes 16: ↑10 and ↓6+4
Comments12

Используем правительственный сайт zakupki.gov.ru как средство бесплатного хостинга статических файлов

Reading time1 min
Views14K
Важная преамбула: нижеописанная страница, допускающая закачку файлов на сайт zakupki.gov.ru без авторизации, была устранена менее чем через 2 часа после публикации этой блогозаписи на Хабрахабре. Блогозапись сохраню, однако же, для истории, тем более что в комментариях Stigmated выложил альтернативный (действующий) способ закачки.
Как стало известно вчера от Навального, Федеральное казначейство РФ умышляет потратить ещё 778 миллионов рублей на развитие портала zakupki.gov.ru, куда ужé зафигачили более 360 миллионов рублей.

Спрашивается: есть ли какая-нибудь непосредственная отдача для народа от этих колоссальных расходуемых средств? Да умолкнут клеветники! В своей неизречённой милости правительство устроило на этом сайте доступный хостинг статических файлов — или же, что вернее, исполнители оставили незакрытою небольшую дыру, позволяющую без какой-либо авторизации зайти по адресу http://zakupki.gov.ru/pgz/documentform и заливать оттуда на сайт разного рода статические файлы.

(Я пишу «небольшую дыру», так как PHP-файл загрузить и затем исполнить всё же не выйдет — однако хостинг картинок всё же устроить можно, например.)

Обратите внимание на адрес нижеследующей иллюстрации, сегодня утром туда залитой:

[Если эта иллюстрация грузится с ошибкою — значит, вышеописанную проблему, возможно, закрыли.]

Адрес её (http://zakupki.gov.ru/pgz/documentdownload?documentId=39240775) позволяет цинично предполагать, что все документы, когда-либо залитые на сайт госзакупок, досягаемы прямым перебором номеров их.

Читать дальше →
Total votes 172: ↑157 and ↓15+142
Comments127

+10 к интеллекту

Reading time9 min
Views165K
MM_mindmap_title

Так или иначе, практически каждый из нас использовал в своей жизни технику интеллект–карт или Mind Mapping. Это всего лишь простая радиальная схема, но с правильным подходом ее можно превратить в мощный инструмент аналитики и синтеза информации, который всегда под рукой и достаточно прост в использовании. И что самое интересное, освоение техники настолько естественно для нашего мозга, что занимает всего лишь несколько минут…
Читать дальше →
Total votes 90: ↑75 and ↓15+60
Comments49

ISO 9001 в ИТ компании

Reading time5 min
Views17K

Сейчас редко найдешь среднюю или большую ИТ компанию, не имеющую ISO 9001 сертификата.
Тем не менее, я считаю, что в ближайшей перспективе ISO 9001 умрет для ИТ мира. Почему?
Попытаюсь обосновать.
Читать дальше →
Total votes 15: ↑10 and ↓5+5
Comments20

Упражнения по взлому Linux-систем

Reading time2 min
Views16K
Для тех, кто интересуется вопросами безопасности и уязвимостями Linux, создан обучающий проект exploit-exercises.com с подборкой виртуальных Linux-машин, описаниями уязвимостей, документацией и практическими заданиями.

1. Виртуальная машина Nebula
торрент-файл
прямая ссылка

Самые общие уязвимости, связанные с эскалацией привилегий в Linux: это SUID-файлы, разрешения, состояние гонки (race conditions), метапеременные оболочки, уязвимости $PATH, уязвимости скриптовых языков, ошибки компиляции бинарных файлов.
Читать дальше →
Total votes 107: ↑102 and ↓5+97
Comments19

N+2 полезные книги для бизнеса, которые обязательно стоит прочитать

Reading time5 min
Views96K
В прошлом году я делал обзор книг, на которых реально растут люди и реально улучшаются процессы.



Тогда понадобился год, чтобы прочитать в десять раз больше бумаги и сделать выборку, которая оказалась неожиданно полезной многим. Вот результаты ещё одного года — ещё N+2 книги для бизнеса, которые реально помогают.

Читать дальше →
Total votes 118: ↑106 and ↓12+94
Comments43

Из чрута — на поверхность: как, почему и что делать?

Reading time2 min
Views25K
Основано на реальных событиях.

Представьте себе, что у вас есть крупный проект, для которого необходимо собирать софт. А ещё у вас есть желание замутить сборочную ферму, на которой ваши подчинённые будут собирать нужный софт. А ещё это всё происходит под Linux-ом, и каждому надо организовать «чистое» окружение с минимумом затрат. Как это сделать?

В зале подняли руки несколько человек и воскликнули «chroot!». Вы согласились, что это просто, быстро и каждый получает полностью ресурсы хостовой машины. Все заапплодировали, решение принято.

А через неделю после интеграции этого решения и после увольнения сотрудника «икс» вы просыпаетесь — а на сервере девственно чистый жёсткий диск. Злодей уничтожил труды разработчиков, работа встала.

Почему же он сумел удалить всё, если был в «защищённом» «запертом» чруте?
Читать дальше →
Total votes 71: ↑59 and ↓12+47
Comments34

Важные изменения в Oracle Database Patch Sets начиная с 11.2.0.2

Reading time3 min
Views6K
На днях компания Oracle выпустила очередной патчсет для своей базы данных с версией 11.2.0.2. Этот патч ознаменовал также важное изменение в формах выпуска патчсетов. Этому вкратце и будет посвящен этот перевод статьи на сайте My Oracle Support — Important Changes to Oracle Database Patch Sets Starting With 11.2.0.2 [ID 1189783.1]

Начиная с патчсета 11.2.0.2 – все пачтсеты к Oracle Database будут являться полными инсталляциями продукта. (И весят они теперь соответственно – прим. переводчика). До этой версии патчсеты представляли собой определенный набор файлов, которые заменяли собой файлы существующей установки.

Читать дальше →
Total votes 4: ↑4 and ↓0+4
Comments3
12 ...
72

Information

Rating
Does not participate
Location
Москва и Московская обл., Россия
Works in
Date of birth
Registered
Activity