• Идеологическая уязвимость, атака на пулы майнинга криптовалют

      У всех пулов майнинга, включая p2pool, существует одна очень простая и неприятная идеологическая уязвимость, с помощью которой можно уменьшить совокупный доход пула относительно его общей мощности. Злоумышленник может 'наказать' пул на сумму, сравнимую с доходами от мощностей злоумышленника, фактически вся награда, выплачиваемая ему пулом. И чем больше мощность злоумышленника и чем дольше продолжается атака, тем больше шанс что это убытки пула будут приближаться к этой величине. И самое главное, что такая атака не стоит злоумышленнику практически ничего.

      Особенно это актуально для владельцев больших мощностей, сравнимых с мощностью самого пула.

      Это не уязвимость протокола bitcoin, ведь ее можно свершать для любой современной криптовалюты, это не уязвимость в коде пулов майнинга — это идеологическая уязвимость метода определения способа начисления наград при распределенных вычислениях.

      Читать дальше →
    • Как сеть bitcoin будет уничтожена (практические советы с примерами)

        Многие уже на хабре знают про криптовалюту — bitcoin, про ее основные особенности и типичные заблуждения. Кому то топики на эту тему покажутся надоедливыми и скучными, попробую обмануть ожидания последних.


        Одна из основных и самых интересных особенностей сети bitcoin является ее защищенность от 'взлома' и, в какой то мере 'DoS атак'. Невозможно на халяву настрогать монеток (их скорость строго контролируется через difficulty на основе скорости нахождения последних блоков), худшее, что может сделать владелец большей половины мощности сети — отменять свои транзакции, а полный контроль над средой распространения (интернетом) — замедление прохождения транзакций и, если разделить физически сеть на несвязанные подсети, откат всех транзакций во всех этих отдельных подсетях послед объединения кроме одной, самой крупной (отдельный и сложный разговор, какие именно транзакции будут откинуты, и это непринципиально).

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

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

        Но самая интересная атака поджидает практически в главной защитной функции сети — расчете сложности.
        Читать дальше →
      • Как же все-таки пользоваться PowerShell?

          Навеяно q&a: Как воспроизвести mp3 из командной строки в Windows 7?

          Немного шокирован предлагаемыми ответами, которые сводятся к 'скачать и установить дополнительное ПО'… и так в системе уже под 20Гб какого то говна чего то полезного, которое зовется операционной системой… извиняюсь, вырвалось.

          Когда то в Windows XP использовал для этой задачи простейшую утилиту mplay, хоть и GUI но планировщиком задач нормально запускается, но в Windows 7 удалили его и даже sndrec32. Запускать монстроуозный wmplayer считаю глупостью, поэтому приходится обращаться к скриптовым языкам.

          Примеры однострочных скриптов на vbs для windows scripting host можно нарыть в интернете, вот простейший пример:
          Set oVoice = CreateObject("SAPI.SpVoice")
          set oSpFileStream = CreateObject("SAPI.SpFileStream")
          oSpFileStream.Open "c:\Windows\Media\tada.wav"
          oVoice.SpeakStream oSpFileStream
          oSpFileStream.Close

          Кстати, это чудо, что код заработал на windows 7, так как по сравнению с windows xp ряд activex объектов исчезло (типа WMPlayerClass) и никто не знает, когда исчезнет или как изменится класс SAPI, да и не дело это, микроскопом гвозди забивать. Поэтому это решение считаю неправильным и не логичным, да и отмирает ActiveX потихоньку, вполне логично убиваемый .NET окружением.
          Попробуем решить задачу с помощью PowerShell