суббота, 2 ноября 2019 г.

Рекомендации по безопасной работе в интернете

Рекомендации по безопасности в интернете

Ниже приводятся рекомендации по защите персональных данных и минимизации последствий различных атак.

  1. Двухфакторная авторизация (2FA).
    Используйте двухфакторную авторизацию не на основе SMS, т.к. злоумышленник может перехватить смс-ы (через восстановление сим-карты по подложным документам). Для этого установите на телефон такое приложение как Google Authenticator или Authy. Можно пойти еще дальше и повысить безопасность, используя в качестве второго фактора аппаратный ключ безопасности, например YubiKey. Его сложно подделать. Для выполнения атаки злоумышленнику придется получить физический доступ к ключу.

  2. Google Voice 2FA.
    В некоторых случаях онлайновые сервисы поддерживает только слабый второй фактор на основе SMS. В этих случаях создайте номер телефона Google Voice (который нельзя перенести на SIM-карту) и используйте его.

  3. Сократите свое присутствие в Интернете.
    Уменьшите потребность в бесполезном обмене личной информацией (дата рождения, местоположение, фотографии с геолокационными данными, встроенными в них и т.д.) Все эти практически общедоступные данные могут быть использованы против вас в случае атаки.

  4. Создайте дополнительный адрес электронной почты.
    Вместо того, чтобы связывать все с одним адресом электронной почты, создайте дополнительный адрес для своих критически важных сетевых идентификаторов (банковских счетов, учетных записей социальных сетей, криптообменников и т.д.). Не используйте этот адрес электронной почты для чего-либо еще и держите его в секрете. Защитите этот адрес с помощью аппаратного ключа 2FA.

  5. Автономный менеджер паролей. Используйте менеджер паролей для хранения ваших паролей, а еще лучше -- автономный менеджер паролей, например KeePass.

  6. Для синхронизации файлов между устройствами используйте программы на основе криптографии и peer-to-peer (P2P) протокола, например SyncThing.

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

  8. При использовании Git / Github настройте цифровую подпись при фиксации коммита в локальный репозиторий.   


пятница, 1 ноября 2019 г.

Pros and cons of different request authorisation methods


In this diagram I recap pros and cons of different request authorisation methods
Diagram 1

https://coggle.it/diagram/XYjL2hz2iucAFw24/t/request-authentication-methods


Request authentication methods


COOKIE
  • Requires CSRF for POSTs (hidden field or cookie)


OAuth Token - cons
  • Redirects are not supported as
  • Token is held in memory
  • Problem with previous auth session in hydra. Logging out requires IDToken
  • Problem with having a planned session expiry, say it, expire within 1h of inactivity, we dont control OAuth token expiration
  • Security policy enforcement is hard to impl.
  • IP-address tracking based
  • Logout some / all  sessions


JWT
  • Any desired custom attribute can be added to token
  • We can control expiration as needed
  • We can "remember" previous sessions and let user to choose
  • User can selectively log out any session / on any device


Remarks
  • Login form needs to be protected by CSRF in any way
  • For REST apps CSRF can be generated once -- on logging in


среда, 1 мая 2019 г.

Inplace column type alteration in Postgres: jsonb <-> hstore

In one of my projects I had to migrate localization resources, stored in jsonb to a plain hstore to reduce storage space and complexity.

Here comes an example of the direct and reverse DDL operations:


ALTER TABLE resources
    ALTER COLUMN name TYPE hstore
    USING hstore('ru', (name->'translate'->>'ru'))||hstore('en', (name->'translate'->>'en'));



ALTER TABLE resources
    ALTER COLUMN name TYPE jsonb
    USING json_build_object('translate', json_build_object('ru', name->'ru', 'en', name->'en'));

суббота, 23 февраля 2019 г.

Скидки на занятия английским и не только / English classes discounts

English Ninjas

Sign up with referral code and earn 10 free minutes.
Buy a package and earn additional 50 free minutes.
Link: https://englishninjas.com/signup?referral_code=nxDCFWGT


Italki

Дарим по 10$ после первого платного занятия.
Italki -- cоцсеть для изучения иностранных языков. Бесплатная практика иностранного языка по обмену, платные занятия с преподавателями. Цены демократичные -- от 5$ за часовое занятие. Регистрируйтесь по ссылке,  и после занятия получите 10$ на счет. Занятия с иностранными преподавателями, носителями языка.

Ссылка для регистрации: https://www.italki.com/i/EAA6bB?hl=ru