Size: a a a

2019 June 28

ЕЧ

Егор Чернышов in rannts
Если есть методика и все её придерживаются, то обсуждение возможно. Если методики нет, то любое обсуждение превращается в балаган. Такая демократия ничего хорошего не сулит
источник

KK

Kirill (Cykooz) Kuzminykh in rannts
Sergey Arkhipov
Серьезный вопрос, ребята. Пока что я не могу организовывать митапы, но вы все знаете/слышали о политике JetBrains на коды. Есть один код, экспайрится 25 июля.

Готов отдать тому, кто расскажет историю про какой-нибудь злой баг, с которым бились и победили, в этом чате
Пайчарм я купил, так что тоже просто поделюсь (хотя CLion не прочь поиметь на год):

Интегрировались мы недавно с кастомной реализацией S3 поверх Ceph кластера, закрытого проксёй с шифрованием контента. В этой проксе была написана своя валиадация pre-signed URL-ов.
На нашей стороне был сервер на aiohttp, который слал запросы в эту S3, и почему-то запросы не проходили проверку сигнатуры, хотя с Амазон S3 всё было отлично. И через curl или requests было всё ОК.
Начал изучать в чём же разница, юзал разные сервисы типа requestbin.com и простой nc, посылая в них запросы по разному: через curl или через aiohttp.
Случайно обратил внимание, что aiohttp в query string слеши кодирует "процентиками", хотя в эталонном запросе они были не экранированы (по стандарту их можно не экранировать в query string).  Оказалось, что:
- во первых aiohttp по дефолту "перекодирует" все URL-ы на которые посылает запросы, экранирует в них всё что надо (и не очень надо). Что бы он этого не делал, надо ему URL передавать не строкой, а в виде объекта yarl.URL(), который создавать с отключением "перекодирования".
- во вторых набор символов допустимых для query string немного отличается от набора допустимого для canonical string, из которой считается подпись (она тоже кодируется с помощью url_encoding-а)
- в третьих, в шифрующей проксе нашего клиента была не очень корректно сделана проверка подписи. Они просто брали query string как она есть, и считали от неё сигнатуру. В результате они её считали от закодированых слешей, а наш сервис считал от нормальных слешей. Амазон делает это более правильно - он сначала декодирует query string, а потом строит canonical string c кодированием по своим правилам - поэтому с ним у нас не было проблем.

Вывод: разрабатывая http-сервисы никогда не полагайтесь на "правильное" кодирование query string, т.к. есть несколько вариантов сделать это правильно. Всегда декодируйте его и потом кодируйте по своему, если это имеет значение.
источник

KK

Kirill (Cykooz) Kuzminykh in rannts
И вот по поводу всяких сервисов типа requestbin.com - я несколько штук разных посмотрел, и все они не идеальные. Мало кто из них показывает "сырой" запрос в том виде как он пришёл. Все они его декодируют и по пути добавляют своего хлама. Например nginx (или что там у них на "фронте") добавляет какие-то служебные заголовки типа x-forwarded-for.
А вот nc - это то что нужно.
источник

БС

Байт Словович in rannts
из того что помню, пару раз убил кучу времени на магию, связанную со случайно запятой в конце строки.. Ну это боян так то
источник

💭П

💭 Руслан Прохоров in rannts
Самая боль это изменения в типах при переходе с 2.7.+ на 3.6+
источник

ЕЧ

Егор Чернышов in rannts
Главное все живы-здоровы)
источник

💭П

💭 Руслан Прохоров in rannts
Егор Чернышов
Главное все живы-здоровы)
В контексте того, что мы тестируем это звучит страшно :-)
источник

in

ildar nizamov in rannts
Дятлы разрушают построенную компьютерщиками цивилизацию, как и было предсказано.
источник

in

ildar nizamov in rannts
В США бушует эпидемия кибершантажа, которой безуспешно противостоят ФБР, Министерство внутренней безопасности и Секретная служба.

http://amp.gs/OUig

Всего от подобных атак за последние два года пострадали свыше полусотни городов США — как маленьких, так и крупных.
источник

DP

Dmitry Plitakov in rannts
#whois
привет всем!) Занимаюсь тестированием, активно изучаю python)
источник

AT

Artem Trepalin in rannts
Dmitry Plitakov
#whois
привет всем!) Занимаюсь тестированием, активно изучаю python)
Привет, коллега!
источник

💭П

💭 Руслан Прохоров in rannts
Это будущее.
источник

БС

Байт Словович in rannts
кстати тут пичарм с 30% скидкой дают https://www.jetbrains.com/pycharm/promo/support-python/
источник

БС

Байт Словович in rannts
похоже он на продление не работает.. только для новых 😞
источник

AS

Artem Savinov in rannts
Байт Словович
похоже он на продление не работает.. только для новых 😞
а у нас все сами себе покупают, а не ДЮ?
источник

БС

Байт Словович in rannts
да. но одно время возвращал
источник
2019 June 29

AM

Artem Malyshev in rannts
источник
2019 July 01

SB

Sergey Belash in rannts
по-моему мы столкнулись с настоящими ботами, а не ИО
источник

💭П

💭 Руслан Прохоров in rannts
Sergey Belash
по-моему мы столкнулись с настоящими ботами, а не ИО
Я даже не знаю. Я в замешательстве.
источник

A

Alexander in rannts
давно бы уже велкомбота написал
источник