• Epic fail of the month: rsync как «вектор» на утянуть данные
    0
    закон и к нам относится

    Ну дак наверно и вероятно даже (в случае звонков, смс, данных на юзверя какой IP в какое время за ним закреплен и т.д.)… И это кстати например в тех же Европах (например в Германии) уже несколько лет с гаком так (только больше не от террористов, а в защиту интелектуальной собственности, чтоб значит торрентами не пользовались и всякий контент "нелегальный" не раздавали).


    Вы же мне выше про "провайдеры обязаны хранить, всё что прошло через них." расказывали… и про "хранить и перехватывать трафик пока нечем"!


    Согласитесь это не одно и тоже что "закон и к провайдерам относится"?

  • Epic fail of the month: rsync как «вектор» на утянуть данные
    0
    1. как вы пришли от «организаторов распространения» информации (сообщений и т.д.) к «провайдерам» (почему у вас это они, а не собственно сервисы)?
    2. то что провайдер чисто физически не в состоянии расшифровать трафик (например по запросу прокуратуры) того же Телеграм или Ватсап и др., вам вероятно тоже не понятно?
    3. если вы про пункт 3 постановления… вы правда думаете что главные актеры из соц-сетей, месенджеров и т.д. не хранят сообщения? (и думается мне что реально дольше чем 6 месяцев).
  • Epic fail of the month: rsync как «вектор» на утянуть данные
    0

    Вот не надо слухи только на хабре разводить (читайте закон внимательно).


    провайдеры обязаны хранить, всё что прошло через них.

    глупость, я вам уже писал что обязаны хранить провайдеры;


    хранить и перехватывать трафик пока нечем, т.к. комплексы, сертифицированные ФСБ отсутствуют.

    • про хранить см. выше; ну а следующее (отложенное в дальний угол с кучей поправок как минимум до 2023 года) подразумевает:
      Согласно проекту приказа Минкомсвязи, интернет-компании и сервисы (не провайдеры) должны хранить и предоставлять спецслужбам: псевдоним, дату рождения, адрес, фамилию, имя, отчество, паспортные данные, языки, которыми владеет пользователь, список его родственников, текст сообщений, аудио- и видеозаписи, адрес электронной почты, дату и время авторизации и выхода из информационного сервиса, наименование программы-клиента;
    • "перехватывать трафик" — это нонсенс, где вы то взяли вообще?!
    • обязательная сертификация средств кодирования (шифрования) требуется только при передаче сведений, составляющих государственную тайну, поэтому сертификации систем мгновенного обмена сообщениями (месенджеров), таких как Telegram, WhatsApp и прочих при передаче сведений не составляющих гос-тайну, не требуется.

    Смотрю в книгу, вижу ...

  • Epic fail of the month: rsync как «вектор» на утянуть данные
    0
    … и да, rsync умеет в обе стороны (что не факт что здесь так можно было, но «writable» как бы намекает, да и судя по степени халатности/криворукости вполне себе могло иметь место).
  • Epic fail of the month: rsync как «вектор» на утянуть данные
    0
    Каким простите образом эти две поправки в Федеральный закон негативно влияют на IT-безопасность, и в частности имеют отношение к «дырке» в следствии «работы» человеческого фактора?
    Поясните вашу логику… Если вы про «хранение интернет-трафика», то сам трафик (читай данные) провайдерами не хранится (только мета-данные так сказать, кто — где — когда — через какой сервис и т.д.)
  • Epic fail of the month: rsync как «вектор» на утянуть данные
    0
    ну грифы бывают разные, но спасибо, добавлю кавычки…
  • Epic fail of the month: rsync как «вектор» на утянуть данные
    +5
    не бэкапы, а по видимому сам сервис, что бэкапит…
  • UPDATED: Амплифицированные memcached DDoS-атаки на 500 Гбит/с прокатились по всей Европе
    0
    Вдогонку — брошу я пожалуй в вас статьей — Epic fail of the month: rsync как «вектор» на утянуть данные / Хабр.
    Надеюсь достаточно «экзотично» (как раз про то, ИМХО)…
  • Создатель Питона: я устал, я ухожу
    –4
    Хот ваших мыслей, и умника ниже, мне понятен…
    Вы не поняли мой: я прекрасно знаю для чего assert нужен, но только caller знает что в общей формуле должно проверяется, если результат F1 должен быть в общей формуле больше 20 например, то будет двойная проверка внутри F2 на 0 и в if на > 20.
    Результат же один — оппоненты придумывают оправдания и способы обхождения ограниченного синтаксиса…
  • Создатель Питона: я устал, я ухожу
    –2
    Не могу уловить ход ваших мыслей.

    "стало читабельнее"… булева алгебра по видимому для вас не читабельна. Отсюда и вывод.


    Если под лаконичностью вы понимаете сугубо размер кода

    Под лаконичностью я понимаю то же что и все люди (см. определение в словаре). Это стало менее лаконично. Точка.

  • Создатель Питона: я устал, я ухожу
    –2
    Тогда уж хоть `assert` какой-нибудь. Ответ прост — потому что разработчик решил так как решил, ну нельзя её вызывать для 0 и баста.
  • Создатель Питона: я устал, я ухожу
    –3
    Но да, я считаю что оно стало читабильнее.

    Ну-ну, а что нынче в универах перестали курс булевой алгебры преподовать?...


    И главное-то мой первый комментарий был ответом на "лаконичнее"...


    это так задумано, что функции F2 и G2 могут принимать как 1 аргумент, так и 2?

    А это вас удивляет, в языке как python… def F2(x, factor=1)

  • Создатель Питона: я устал, я ухожу
    –5

    Ни в каком (ну почти), просто когда F2(a) может внезапно делить внутри на a (что есть результат от F1), нужно вдруг делать в питоне a and F2(a) чтобы не словить исключения типа ZeroDivisionError.


    Но выворачивать всё на изнанку и плодить лишние сущности и проверки в угоду "строгому" синтаксису языка (и с потерей читабельности кстати) — это простите нонсенс.

  • Создатель Питона: я устал, я ухожу
    –3
    Много-много лаконичнее стало, гораздо меньше дубликатов, теперь это конечно много легче поддерживать и развивать, ибо совсем не говно-код…
    А главное стало так похоже на изначальное математическое-выражение.

    Т.к. в комментарии тяжело выразить все эмоции — это был сарказм если что.
  • Создатель Питона: я устал, я ухожу
    –1
    Если нужна имменно такая логика (и вам просто повезло что вы никогда такого не видели, хотя в математике, дата-мининге и.т.д и похуже вещи встречаются) — то это не ребус, а всё-таки код.
    Мой ответ был конкретно на «лаконичность» и «читаемость». Сделать именно такие вещи (хоть ребус, ходь код) более читаемымы и/или лаконичнымы (даже с введением новых сущьностей) не очень получается по видимому…
    Поэтому и контр-аргументы такие… вида «говнокод» и «ребус». Ну-ну…
  • Создатель Питона: я устал, я ухожу
    –3
    PEP 572 — типичный пример, как много людей забываются, когда начинаются разглагольствования о конкретных деталях синтаксиса… символах операторов, ключевых словах, удобочитаемости и прочих вкусностях.
    Столько эмоций вокруг деталей синтаксиса тупо не соизмеримы с эффектом от введения собственно этого оператора.

    Если у человека, после многия доказательства, аргументов и примеров… всего один контр-аргумент типа «говно-код», то вести с ним дискуссию на академическом уровне считаю ниже своего достоинства.
    Такой ответ вас устроит.
  • Создатель Питона: я устал, я ухожу
    –3
    ну что можно сказать, месье знает толк…
  • Создатель Питона: я устал, я ухожу
    0
    Вопрос не того как оно читаемо, а если оно именно с такой логикой нужно, как оно будет читаемо если по другому, но… Лаконичнее и проще — не будет. И да то просто один пример, есть и другие — см. выше примеры из раздела Syntax and Semantics.
  • Создатель Питона: я устал, я ухожу
    –6
    if (
            (
                ( 
                    (a := F1()) and (b := F2(a)) > 100 
                 or (a := F0()) and (b:= F3(a, 0)) > 100 
                )
                and ( (c := F2(a, b)) or (c := F3(a, b)) )  
                and ( res := F4(a, b, c) )
             or (
                    (a := G1()) > 100 and (b := G2(a)) 
                 or (a := G0()) > 100 and (b:= G3(a, 0)) 
                )
                and ( (c := G2(a, b)) or (c := G3(a, b)) )
                and ( res := G4(a, b, c) )
            )
            and
            (
                (res := F5(res, a, b, c)) > 1
             or (res := G5(res, a, b, c)) > 1
            )
        ):
            do_something_with(res) ...

    перепишите на "строгий" питон что-нибудь такое, и посмотрите потом как "лаконично" у вас получится.
    А я такие полуфункциональные конструкты и почище этого видел.
    При том не забываем, что тут на самом деле не a,b,c и Fx, Gx (как тут для наглядности), а длинные говорящие значения.


    Я часто не согласен с решениями Гвидо, но тут его полностью поддерживаю…
    Это как минимум просто удобно (и очень часто нехватало в питоне), спасает от дублирования кода и временных ненужных переменных, ну и тупо необходимая мера, если питон и дальше должен считаться близким к функциональным языком.


    позволит писать трудно понимаемые конструкции

    Это вот-это? Вы серьезно. Какой-нибудь трех-этажный взаимосвязанный декоратор (который даже его разработчик через пол-года не понимает) — это "позволяется", а оператор (оператор, Карл!) всё испортит видите ли… Абракадабру можно написать любыми конструктами в любом языке, это дело личной гигиены и дисциплины (и возможно попустительства ревьюверов, коммьюнити и т.д.). Но никак не отдельного оператора.


    недовольны, что не всем это нравится.

    Всем это простите кому? У вас есть статистика? Многим — возможно, но в моем окружении, это например "всем" поголовно нравится. И что?
    И потом, тут всё просто, не нравится — не используйте...

  • Двойка вам, или аудит со взломом
    0
    Поправка — «выводы читателей» -> «выводы ОДНОГО читателя»… (ни или некоторых)… Или вы на абсолют (в смысле идеального читателя) претендуете?

    Мог бы, но не буду — я такой какой есть, т. е. всё просто не нравится — не читайте.
  • Двойка вам, или аудит со взломом
    0
    То не претензия была, а мое видение ситуации (как она была).

    Но все же отвечу, потому что — статья написана художественным стилем, от моего лица, и мы в этой длинной ветке обсуждаем незначительный эпизод (по мнению автора), который был к тому же преднамеренно им сокращен.
  • Двойка вам, или аудит со взломом
    0
    Можно прекрасно сочетать ) особенно если тот опенсорс пользуется в работе, а то и является чуть не ядром рабочего стека…
    Берите спокойно, то все лучше чем он по всяким хабрам лазить будет
  • Принцип работы свёрточной нейронной сети. Просто о сложном
    0
    1. интерпретаторы уже лет десять с гаком так не работают, т.е. тупо code-body скомпилится jit-ом один раз, исполнение же его ничем не отличается от исполнения собственно кода функции. Но, в случае вызова функции добавляется обертка — поиск или маппинг её имя->указатель, проверка эпохи (что-то нужно перекомпилировать), передача аргументов в стек (или регистры если умеем), и возвращение значения/значений.
      Т.е. в целом даже в случае интерпретатора (а возможно ArsenAbakarov имел ввиду чистый компилятор), вызов функции часто медленнее чем исполнение того же кода, ибо без лишних накладных расходов).
      Вот вам к примеру питон с интерпретацией внутри (и временем исполнения без и с вызовом функции)…
      >>> import timeit
      >>> timeit.repeat("(a + b + c) - 1", setup="a = 1; b = 2; c = 3", repeat=3)
      [0.11377258186831796, 0.08951876673711467, 0.08850507679022712]
      >>> timeit.repeat("mysum(a, b, c) - 1", setup="a = 1; b = 2; c = 3;\
      ... mysum = lambda i,j,k: (i + j + k)", repeat=3)
      [0.1852146263911436, 0.14948333891504717, 0.15083834724907774]
    2. если же речь о компиляторах, то тут сложнее, но код даже часто специально дублируется, как в C/C++ при -O2 ... -Ofast, чтобы минимизировать издержки на вызов (не размывать кэш проца, и т.п. вкусности). И если скомпилировать с -Os, то будет как правило медленнее, хотя байт-код получится компактнее (и меньше).
    3. основная задача "функции" не для ускорения, т.е. да функции пишут не для этого.

    Так что ArsenAbakarov в целом прав — нонсенс.

  • Двойка вам, или аудит со взломом
    0

    Неправильный ответ, — админы нонче у банков как раз не свои, а "внешние" ибо дата-центры кругом, млин…
    А доступа ко всему нередко даже у контент-манагера высшего эшелона нет.


    Про "свой, проверенный" — улыбнуло. Разраб то часто не знает, чего там нужно обезличивать. А уж админ и подавно.


    Возвращаясь же к теме обезличивания, вы не зацикливайтесь на базе… (не базой единой) — вот для примера напишите скрипт обезличивания файлика транзакции (месяца за два-три, штук так мильен в день, каждый подписан приватным ключем, которого у вас нет и не будет, и для которого нужно чтоб все ссыли aka references работали).

  • Двойка вам, или аудит со взломом
    0

    Ну спасение, logout или hibernate (то когда нужно просто чтоб всё сохранить в рабочем виде, а не тест на всю ночь до exception в дебаггере)...


    И да, превлекает иногда :)
    Мне один знакомый рассказывал, как им с коллегами пришлось выключить комп отсутствующего соседа, потому что он "постоянно громко пикал".
    В последствии оказалось попыткой взлома, просто хакер "непутевый" попался и логировал чего-то там не-то бинарное не-то не в той кодировке в консоль (ну а оно ругалось на каждый чих "\7")...

  • Двойка вам, или аудит со взломом
    0
    А кто это всё делает, не имеет доступа к сегменту «прод» (или к «тест» пока не обезличен)?
    Чем он иначе тогда отличается от потенциального разраба, спрошу по другому, т.е. чем Вася лучше Пети, с точки зрения безопасника и revision dept?
  • Двойка вам, или аудит со взломом
    0
    Вот с последней фразой непонятно, зачем при экспорте?

    Потому что если разграничивать по нормальному (иначе зачем обезличивание нужно), то есть как минимум два сегмента "прод" и "тест" (и к проду у разраба в этом случае доступа нет). Если речь о бэкапах, то и они лежат тогда тоже в сегменте "прод", ну или точно не в сегменте "тест".


    но другие риски возникают, что скрипт не там и не то почистит.

    read-only access ко всему, кроме папки export.

  • Двойка вам, или аудит со взломом
    0

    Ну в принципе смысл правильный, не так категорично возможно, но все же…
    Просто это совершенно точно не firewall+antivir, которые защищают только лишь от того, от чего они защищают.


    разные программные и железные решения, не связанные между собой комплексно

    Если эти ваши решения покрывают все возможные* векторы атак, то и хорошо. У них было не так.
    * Естественно "все", с поправкой на — "с учетом соотношения риск-стоимость-возможность выполнять работу" (а то можно поназакрывать так, что люди побегут или тупо не смогут что-то сделать). Чем-то можно рискнуть (пренебречь) в угоду стоимости, чем-то из-за высокой сложности выполнения и/или рисков "положить" собственно работу (медленно, высокий риск "уронить" что-нибудь нужное, и т.д.). Но если риски оценены и все-то оправдано/обосновано (а не по неведению/лени/итд).

  • Двойка вам, или аудит со взломом
    0

    О, тест на внимательность пройден!
    Да нет, снять можно на самом деле (только не для remote session и не через GetDC, GetWindowDC и ко)…
    Однако и это вовсе не обязательно, просто мне было проще/быстрее (ибо готовый скрипт был).


    Можно например тупо найти окошко диалога (первый child внутри) и перебрать всех деток, отправив все caption (типа GetWindowText(hChildWnd))… среди них кроме "Allow Remote Control" и прочего, поверте мне обязательно найдете что-нибудь вида "123 456 789" и "1111".
    Хотя я вам их ControlID и так скажу 0x4E82 и 0x4E83…
    Да много-много чего можно.

  • Двойка вам, или аудит со взломом
    0
    Ваш вывод не верен, все было строго по делу, без лирики.
  • Двойка вам, или аудит со взломом
    0
    Но вы почему-то сделали далекоидущие выводы, не зная «что точно происходило там».
    Если упрощая кусок истории (как незначительный эпизод или по каким-либо другим причинам, например мало относится к основной теме статьи), автор сделал так как сделал, и чего-то не проглядывается, это вовсе не обязательно означает, что ваши фантазии будут соответствовать действительности.
    Это возможно значит ровно то, что автор не смог увести ваше внимание от этого (с его точки зрения, незначительного) момента, и дал тем самым повод цепляться к деталям. Минус ему-мне за это.
    Хотя в теории, для каждой статьи, любой (в меру своей испорченности) может найти повод зацепится за что-нибудь, мозолящее ему глаза.
  • Двойка вам, или аудит со взломом
    0
    Я не люблю пентест (о чем и написал в статье), пентест имеет смысл когда это массовое действо, т.е. типа bounty program — больше шансов что кому-то повезет (долбить вслепую на поиск теоретической уязвимости — очень неблагодарное занятие).
    И я не думал, что на русскоязычной площадке нужно развернуто про «тренироваться на кошках»…
  • Двойка вам, или аудит со взломом
    0
    Я пишу о том, что они всем отделом включили режим «обиженка», и соответственно «готовности опонента выслушивать» не особо наблюдалось.
    При том что я на самом деле, как уж и не пытался слова подобрать, чтобы ненароком не затронуть «честь и достоинство»…
    «Троечка» — это же описание итогового вывода, если хотите, для упрощения и чтобы статья не выросла в талмуд. А также по соображениям этического характера (опуская некоторые подробности, на публикацию которых я не получил разрешения).
  • Двойка вам, или аудит со взломом
    +1
    Тут всегда вопрос баланса между позакрывать всё и вся и не дать людям повода сбежать (потому что работать стало невыносимо)…

    Вы представьте на минуту, вы разраб, у вас цейтнот (сверхурочные после 19:00), вы не понимаете как оно и почему бажит, а внешний «мир» для вас закрыт, не в онлайн-доку заглянуть, не погуглить, не спросить в чате, не (любимое подставить)…
  • Двойка вам, или аудит со взломом
    0
    А, подумал про входящие (простите, просто у прокси оно почти всё — внешнее). Тогда может быть, не знаю на сколько то реализуемо.
  • Двойка вам, или аудит со взломом
    0
    Ну найти общий язык всегда возможно… вопрос уровня разжевывания и готовности опонента выслушивать и главное понять аргументы другой стороны (без всяких определений, к слову).
    Возвращаясь же к «определению», тогда да — пусть будет «фигура речи», если вам так удобнее.
  • Двойка вам, или аудит со взломом
    0
    А внешнего соединения там не было — вы о чем? (Через прокси! o..O)
  • Двойка вам, или аудит со взломом
    0
    Юмор понятен, имел конечно же ввиду определение чем они все являются, тем самым чем они не могут являтся в принципе.
    Пример про велосипед и авто вами не понят, от слова совсем (или вы передёргиваете).
    Возьмите например одно свойство — «может самодвигаться». Один им обладает вполне, другой нет (ну за исключением с горы).

    Т.е. нужно ли полное определение, чтобы понять что этими средствами не возможно выполнить защиту от множества векторов атаки (умолчим уже про внутреннюю безопасность).

    Про векторы же, почитайте любой пейпер типа «Limitations of Network Intrusion Detection», может составите ваше искомое определение.
    Рассказывать же вам тут полный университетский курс «Способы борьбы и методы предотвращение вторжения» у меня простите уж нет ни времени, ни желания.
  • Двойка вам, или аудит со взломом
    0
    APIDS привязаный к поведенческим анализаторам, хотя бы той же антивирусной системы.
  • Двойка вам, или аудит со взломом
    0
    Я вам дал определение от противного, из чего легко делается вывод чем всё то не является.
    Если вам показали велосипед, трудно ли определить что автомобилем он не является? Без точного определения собственно автомобиля.