Прекрасный конспект по пентесту (тестированию на проникновение) web-приложений:
Web Application Penetration Testing Cheat Sheet
И структура удобная, и инструменты хорошие, и про OWASP не забыли, и никакого script-kiddie мусора. Только хардкор.
Web Application Penetration Testing Cheat Sheet
И структура удобная, и инструменты хорошие, и про OWASP не забыли, и никакого script-kiddie мусора. Только хардкор.
Неплохая бесплатная книга по построению API:
Building APIs with Django and Django Rest Framework
Сначала кратко описывается, как делать это чисто на Django, потом — работа с Django REST Framework. По каким-то соображениям, авторы ни слова не сказали про CBV, поэтому главу про only Django можно считать не освещённой. А вот про DRF очень даже интересно.
Building APIs with Django and Django Rest Framework
Сначала кратко описывается, как делать это чисто на Django, потом — работа с Django REST Framework. По каким-то соображениям, авторы ни слова не сказали про CBV, поэтому главу про only Django можно считать не освещённой. А вот про DRF очень даже интересно.
По итогам недавнего опыта написал для вас статью о том, как вывести проект в тренды Github. Приятного чтения :)
GitHub
orsinium/notes
notes - Мои рабочие заметки обо всём подряд
Мне тут один умный парень подкинул пару статей про оценку сроков:
+ Как оценить время на выполнение сложных задач
+ Как разработчику оценить трудозатраты
Когда будете в очередной раз обсуждать как же проводить оценку сложности задач — не надо изобретать велосипед. Если хотите ломать правила и устоявшиеся подходы, неплохо бы сначала о них узнать, чтобы стартовать сразу "стоя на плечах гигантов".
+ Как оценить время на выполнение сложных задач
+ Как разработчику оценить трудозатраты
Когда будете в очередной раз обсуждать как же проводить оценку сложности задач — не надо изобретать велосипед. Если хотите ломать правила и устоявшиеся подходы, неплохо бы сначала о них узнать, чтобы стартовать сразу "стоя на плечах гигантов".
vc.ru
«Когда будет готово?»: как оценить время на выполнение сложных задач
Руководитель студии «Сибирикс» Владимир Завертайлов написал для vc.ru колонку о том, как давать оценку времени, которое нужно для выполнения сложных задач.
Несколько прекрасных статей из серии The Science of The Job Search:
1. Data-Backed Ways To Win — куча статистики по тому, кто и как лучше всего проходит собеседования. Buzzword bingo даёт +29% к вероятности успеха :D
3. 61% of “Entry-Level” Jobs Require 3+ Years of Experience — про опыт работы и возраст.
Вторая часть про расизм, для этой страны не так актуально, да и многие выводы тривиальны.
Ну и бонус: Why I Quit Google to Work for Myself.
Даже если не ищите работу — почитайте, очень интересная статистика. О психологии и состоянии рынка.
1. Data-Backed Ways To Win — куча статистики по тому, кто и как лучше всего проходит собеседования. Buzzword bingo даёт +29% к вероятности успеха :D
3. 61% of “Entry-Level” Jobs Require 3+ Years of Experience — про опыт работы и возраст.
Вторая часть про расизм, для этой страны не так актуально, да и многие выводы тривиальны.
Ну и бонус: Why I Quit Google to Work for Myself.
Даже если не ищите работу — почитайте, очень интересная статистика. О психологии и состоянии рынка.
TalentWorks
The Science of The Job Search, Part I: 13 Data-Backed Ways To Win
Although people have a ~2% interview rate for online job applications on average, some TalentWorks subscribers have a 40%+ interview rate! What's their secret?
1 апреля CloudFlare анонсировал DNS 1.1.1.1. На данный момент, это самый быстрый DNS. Пользуюсь, пока без проблем :)
The Cloudflare Blog
Announcing 1.1.1.1: the fastest, privacy-first consumer DNS service
Cloudflare's mission is to help build a better Internet. We're excited today to take another step toward that mission with the launch of 1.1.1.1 — the Internet's fastest, privacy-first consumer DNS service. This post will talk a little about what that is…
Довольно интересное видео:
Docker и Ansible — лучшие друзья DevOps
Дает общее представление о технологиях. Даже тем, кто в теме, рекомендую послушать в фоне. Основная идея — не надо ничего писать ручками, всё уже готово. Есть DockerHub, есть Ansible Galaxy, и на них есть почти всё, что может понадобиться.
Docker и Ansible — лучшие друзья DevOps
Дает общее представление о технологиях. Даже тем, кто в теме, рекомендую послушать в фоне. Основная идея — не надо ничего писать ручками, всё уже готово. Есть DockerHub, есть Ansible Galaxy, и на них есть почти всё, что может понадобиться.
YouTube
Денис Нелюбин - Docker и Ansible — лучшие друзья DevOps
Ссылка на презентацию: https://www.slideshare.net/OmskIT/20170311-02-docker-ansible-devops
Попробовали Docker? Понравилось? Думаете, как его засунуть на продакшен? Боитесь?
Мы тоже боимся. Поэтому оставили Docker только для разработки и тестирования. Потому…
Попробовали Docker? Понравилось? Думаете, как его засунуть на продакшен? Боитесь?
Мы тоже боимся. Поэтому оставили Docker только для разработки и тестирования. Потому…
Ещё один довольно простой материал про Docker:
Disposable Attack Containers
О том, как развернуть kali внутри контейнера и как с этим работать. Если не нужны програмки с GUI — самое то. Иначе — виртуалка или отдельный раздел на диске. Я когда-то пытался одновременно держать репозитории Mint и Kali и через приоритеты разруливать пакеты. Ничего хорошего из этого не вышло, если честно.
Disposable Attack Containers
О том, как развернуть kali внутри контейнера и как с этим работать. Если не нужны програмки с GUI — самое то. Иначе — виртуалка или отдельный раздел на диске. Я когда-то пытался одновременно держать репозитории Mint и Kali и через приоритеты разруливать пакеты. Ничего хорошего из этого не вышло, если честно.
ZeroSec - Adventures In Information Security
LTR101 - Disposable Attack Containers (DAC)
My take on using docker for disposable attack images, basically leveraging docker images for Bug Bounties & Pentesting.
А сегодня поговорим про SOLID — один из ключевых принципов построения сопровождаемого проекта.
+ Разбор ключевых понятий на хабре
+ SOLID Go design
+ Критика SOLID
+ Разбор ключевых понятий на хабре
+ SOLID Go design
+ Критика SOLID
Wikipedia
SOLID (объектно-ориентированное программирование)
SOLID (сокр. от англ. single responsibility, open-closed, Liskov substitution, interface segregation и dependency inversion) в программировании — мнемонический акроним, введённый Майклом Фэзерсом (Michael Feathers) для первых пяти принципов, названных Робертом…
Давайте я сегодня покажу пару анекдотов, а вы сначала посмеетесь, а потом задумаетесь. Навеяно это всё обсждением древней (два года прошло, а проблемы остались) о ситуации с leftpad. Особенно будет полезно поговорить об этом в связи со вчерашним постом о SOLID имея ввиду причины, почему не стоит доводить эту методологию до абсурда.
+ is-thirteen — проверяет, является ли переданное число 13. Обязательно посмотрите тесты к нему. Ага, это шуточный модуль. А вот следующие — нет.
+ negative-zero — проверяет, является ли число -0. Ага, в JS 0 и -0 — разные числа. Конечно, этого недостаточно, поэтому positive-zero вынесен в отдельный модуль.
+ is-positive — проверяет, является ли переданный объект положительным числом. На самом деле, там написано не object, а something, потому что в JS object — отдельный тип данных (ведет себя как map, dict etc.)
+ os-homedir — возвращает путь к домашней директории текущего пользователя. Тут уже не одна строчка, а 24. Тут уже речь не об однострочниках, а о проблемах JS как языка серверного программирования.
Проблем много. Очень много. Уверен, вы и сами сможете их сформулировать. Стоит самостоятельно о них задуматься. Каждому. И тогда мы сможем создать такую рабочую среду, в которой мы будем делать только что-то клёвое и нужное, а не очередной negative-zero или собственный аллокатор. Это весело, полезно для саморазвития и совершенно бесполезно для остального мира, прям как хотьба кругами.
+ is-thirteen — проверяет, является ли переданное число 13. Обязательно посмотрите тесты к нему. Ага, это шуточный модуль. А вот следующие — нет.
+ negative-zero — проверяет, является ли число -0. Ага, в JS 0 и -0 — разные числа. Конечно, этого недостаточно, поэтому positive-zero вынесен в отдельный модуль.
+ is-positive — проверяет, является ли переданный объект положительным числом. На самом деле, там написано не object, а something, потому что в JS object — отдельный тип данных (ведет себя как map, dict etc.)
+ os-homedir — возвращает путь к домашней директории текущего пользователя. Тут уже не одна строчка, а 24. Тут уже речь не об однострочниках, а о проблемах JS как языка серверного программирования.
Проблем много. Очень много. Уверен, вы и сами сможете их сформулировать. Стоит самостоятельно о них задуматься. Каждому. И тогда мы сможем создать такую рабочую среду, в которой мы будем делать только что-то клёвое и нужное, а не очередной negative-zero или собственный аллокатор. Это весело, полезно для саморазвития и совершенно бесполезно для остального мира, прям как хотьба кругами.
Хабр
NPM и left-pad: мы разучились программировать?
Автор — Дэвид Хейни (David Haney), ведущий инженер-программист Stack Overflow Итак, разработчики, время для серьёзного разговора. Вы уже наверное в курсе, что н...
Давайте сегодня почитаем и подумаем про TOML — очередной формат человекочитаемых данных. Как ini, только адекватнее.
+ Спецификация на github
+ Спор о том, зачем всё это
+ Имплементации для всего
Как мне кажется, применение TOML в качестве конфига вполне реальное и перспективное. К примеру, supervisor использует ini-файлы и с этим связано много проблем. например, программы как будто можно группировать, но вот только группировка эта не создает область видимости, и имена программ по прежнему должны быть уникальными. Вот только при конфликте имен ошибки не будет, просто одна из программ, описанных в конфиге, в супервизоре не появится. Удобно, правда? Я думал переписать встроенную реализацию парсера на YAML или вообще что угодно более адекватное, но она занимает 2к+ строк, и я в этом не особо смог разобраться. Адище какое-то. Он как будто бы использует патченный built-in configparser, но от этого не легче.
+ Спецификация на github
+ Спор о том, зачем всё это
+ Имплементации для всего
Как мне кажется, применение TOML в качестве конфига вполне реальное и перспективное. К примеру, supervisor использует ini-файлы и с этим связано много проблем. например, программы как будто можно группировать, но вот только группировка эта не создает область видимости, и имена программ по прежнему должны быть уникальными. Вот только при конфликте имен ошибки не будет, просто одна из программ, описанных в конфиге, в супервизоре не появится. Удобно, правда? Я думал переписать встроенную реализацию парсера на YAML или вообще что угодно более адекватное, но она занимает 2к+ строк, и я в этом не особо смог разобраться. Адище какое-то. Он как будто бы использует патченный built-in configparser, но от этого не легче.
GitHub
GitHub - toml-lang/toml: Tom's Obvious, Minimal Language
Tom's Obvious, Minimal Language. Contribute to toml-lang/toml development by creating an account on GitHub.
Так, пока без крупных постов. Немного разгребу список полезных либ, а потом уже сделаю заметку про работу с git.
gron — способ grep'ать JSON. Полезно как минимум при анализе вывода docker inspect
gron — способ grep'ать JSON. Полезно как минимум при анализе вывода docker inspect
GitHub
GitHub - tomnomnom/gron: Make JSON greppable!
Make JSON greppable! Contribute to tomnomnom/gron development by creating an account on GitHub.
shell-functools — немного фич функционального программирования для bash. Не то чтобы это нельзя было сделать через встроенные команды bash или perl. Просто так оно гораздо легче и понятнее.
GitHub
GitHub - sharkdp/shell-functools: Functional programming tools for the shell
Functional programming tools for the shell. Contribute to sharkdp/shell-functools development by creating an account on GitHub.
Структуры данных и алгоритмы на Go. Описаний нет, комментариев нет, зато кода много.
GitHub
GitHub - ua-nick/Data-Structures-and-Algorithms: Data Structures and Algorithms implementation in Go
Data Structures and Algorithms implementation in Go - GitHub - ua-nick/Data-Structures-and-Algorithms: Data Structures and Algorithms implementation in Go
Ну что, ребят, все в носках?) Естественно, этот канал будет работать как и прежде, ежедневно и без выходных. Мыжпрограммисты.
Ну и пару простых важных мыслей:
1. Старайтесь не пользоваться сторонними сервисами. Не только о приватности речь, но и лютых тормозах на всех этих сервисах. Лучше соберитесь с друзьями и скиньтесь на VPS. Я использую zomro.com, ещё есть облака от Digital Ocean, они дешёвые и чертовски простые в настройке.
2. Если поднимаете на сервере dante, не забудьте либо убрать ему shell, либо вообще убрать доступ к ssh по паролям. Вот тут есть инструкция по настройке dante:
https://krasovsky.me/it/2017/07/socks5-dante/
Ну и пару простых важных мыслей:
1. Старайтесь не пользоваться сторонними сервисами. Не только о приватности речь, но и лютых тормозах на всех этих сервисах. Лучше соберитесь с друзьями и скиньтесь на VPS. Я использую zomro.com, ещё есть облака от Digital Ocean, они дешёвые и чертовски простые в настройке.
2. Если поднимаете на сервере dante, не забудьте либо убрать ему shell, либо вообще убрать доступ к ssh по паролям. Вот тут есть инструкция по настройке dante:
https://krasovsky.me/it/2017/07/socks5-dante/
Forwarded from Cybersecurity & Co. 🇺🇦 (Alex V. Litreev)
⚡️Роскомнадзор заблокировал более 600000 IP-адресов Amazon
Апокалипсис начался. Роскомнадзор с щедрой руки внёс более полумиллиона адресов Amazon в реестр запрещенных сайтов, не разбираясь, какие кому принадлежат — всё ради того, чтобы остановить распространение Telegram в России.
Уже есть первые пострадавшие: ритейл, два крупных банка из ТОП-20, ряд частных клиник, платежная система и другие сервисы.
АСТАНАВИТЕСЬ.
Апокалипсис начался. Роскомнадзор с щедрой руки внёс более полумиллиона адресов Amazon в реестр запрещенных сайтов, не разбираясь, какие кому принадлежат — всё ради того, чтобы остановить распространение Telegram в России.
Уже есть первые пострадавшие: ритейл, два крупных банка из ТОП-20, ряд частных клиник, платежная система и другие сервисы.
АСТАНАВИТЕСЬ.
ITGram
⚡️Роскомнадзор заблокировал более 600000 IP-адресов Amazon Апокалипсис начался. Роскомнадзор с щедрой руки внёс более полумиллиона адресов Amazon в реестр запрещенных сайтов, не разбираясь, какие кому принадлежат — всё ради того, чтобы остановить распространение…
Сейчас быстренько весь интернет заблокируют ;)
Сегодня поговорим о погоде.
+ Как машины предсказывают нам погоду — потрясающая большая статья о том, как работает предсказание погоды в современном мире.
+ Яндекс анонсирует собственную технологию прогнозирования погоды Метеум — также интересная статья про погоду, написанная в качестве рекламы новой фичи Яндекса. Про это есть в начале первой статьи.
+ Прогноз осадков на два часа — видео с конференции Data & Science о фиче, анонсированной яндексом через год. Также много интересной информации.
Ну и небольшая цитата из комментариев:
"Я не понимаю, что Яндекс собрался считать, если исходные данные показывают неизвестно что. Ближайшая ко мне метеорологическая станция поставлена была в чистом поле, а теперь там вокруг многоэтажные дома. Теперь станция мерит направление и скорость сквозняка между домами, и температуру вытяжки из магазина."
+ Как машины предсказывают нам погоду — потрясающая большая статья о том, как работает предсказание погоды в современном мире.
+ Яндекс анонсирует собственную технологию прогнозирования погоды Метеум — также интересная статья про погоду, написанная в качестве рекламы новой фичи Яндекса. Про это есть в начале первой статьи.
+ Прогноз осадков на два часа — видео с конференции Data & Science о фиче, анонсированной яндексом через год. Также много интересной информации.
Ну и небольшая цитата из комментариев:
"Я не понимаю, что Яндекс собрался считать, если исходные данные показывают неизвестно что. Ближайшая ко мне метеорологическая станция поставлена была в чистом поле, а теперь там вокруг многоэтажные дома. Теперь станция мерит направление и скорость сквозняка между домами, и температуру вытяжки из магазина."
vas3k.blog
Как машины предсказывают нам погоду
None
Пришло время для обзора proxy и VPN серверов, которые можно развернуть на своём сервере. Telegram справляется, но всё же пригодится :) под названиями скрываются ссылки на гайды по установке.
+ OpenVPN — самый популярный сервер VPN. Гайдов по нему выше крыши, но настройка довольно непростая и с кучей тонкостей. Для любителей хардкора. Отличие VPN от прокси, в первую очередь, в том, что VPN шифрует весь трафик между клиентом и сервером, так что OpenVPN, при правильной настройке, лучше всего позаботится о приватности ваших данных. Не путать с анонимностью, для неё надо сделать чуточку больше.
+ shadowsocks — крайне популярное решение для обхода цензуры. Маскирует трафик под HTTPS, имеет шифрование трафика, работает быстрее чем OpenVPN и крайне просто устанавливается. Имеет клиенты под все устройства. В плане безопасности несколько отстает от OpenVPN, т.к. аутентифицирует через PAM.
+ dante — самое быстрое решение. Просто SOCKS5 прокси. Оно не обеспечивает никакого дополнительного шифрования трафика, зато совсем не нагружает сервер и не требует никаких отдельных клиентов: для telegram его можно вбить в настройки proxy внутри самого приложения.
По установке Dante на debian хочу добавить, что у меня его не было в репах, и я его стащил из репов убунту:
Остальное как по ссылке.
+ OpenVPN — самый популярный сервер VPN. Гайдов по нему выше крыши, но настройка довольно непростая и с кучей тонкостей. Для любителей хардкора. Отличие VPN от прокси, в первую очередь, в том, что VPN шифрует весь трафик между клиентом и сервером, так что OpenVPN, при правильной настройке, лучше всего позаботится о приватности ваших данных. Не путать с анонимностью, для неё надо сделать чуточку больше.
+ shadowsocks — крайне популярное решение для обхода цензуры. Маскирует трафик под HTTPS, имеет шифрование трафика, работает быстрее чем OpenVPN и крайне просто устанавливается. Имеет клиенты под все устройства. В плане безопасности несколько отстает от OpenVPN, т.к. аутентифицирует через PAM.
+ dante — самое быстрое решение. Просто SOCKS5 прокси. Оно не обеспечивает никакого дополнительного шифрования трафика, зато совсем не нагружает сервер и не требует никаких отдельных клиентов: для telegram его можно вбить в настройки proxy внутри самого приложения.
По установке Dante на debian хочу добавить, что у меня его не было в репах, и я его стащил из репов убунту:
wget http://ppa.launchpad.net/dajhorn/dante/ubuntu/pool/main/d/dante/dante-server_1.4.1-1_amd64.deb
dpkg -i dante-server_1.4.1-1_amd64.deb
Остальное как по ссылке.
Digitalocean
Как настроить сервер OpenVPN в Ubuntu 16.04 | DigitalOcean
Хотите иметь безопасный и защищённый доступ в Интернет с вашего смартфона или ноутбука при подключении к незащищённой сети через WiFi отеля или кафе? Виртуал…
backoff — коллекция простых декораторов для повторных запросов при ошибке. Полезно для сетевых запросов, в первую очередь, да.
GitHub
GitHub - litl/backoff: Python library providing function decorators for configurable backoff and retry
Python library providing function decorators for configurable backoff and retry - litl/backoff
textql — консольная утилита для обработки CSV через SQL запросы.
GitHub
GitHub - dinedal/textql: Execute SQL against structured text like CSV or TSV
Execute SQL against structured text like CSV or TSV - dinedal/textql