TGViewer
Channel Public Channel
Crypto Offensive

Crypto Offensive

@cryptooffensive

Чат: https://t.me/cryptooffensive_chat

Чтобы понять, как что-то работает, выясните, как это сломать (С) Талеб

Изучаем безопасность крипты, исследуя реальные атаки и уязвимости
Subscribers
1.2K
Photos
2
Videos
0
Links
72

Showing posts older than #41 · Back to latest

Older Posts 20 shown
Post #40
Crypto Offensive pinned «Чат: https://t.me/cryptooffensive_chat 3 правила: 1) white hat only. За блечерские посты будем банить 2) разрешен любой оффтоп, но по окончанию всё что далеко от тематики - будем тереть 3) не задавайте мета-вопросов вроде "разбирается ли кто-то в ...", сразу…»
Post #39 1.65K
#mev

Не секрет, что блокчейн Ethereum - крайне враждебная среда. Если смарт-контракт можно проэксплуатировать ради профита, то это произойдет.
Но эта не прощающая ошибок среда блекнет по сравнению с мемпулом. Если блокчейн сам по себе является полем битвы, то мемпул - это нечто худшее: темный лес.
Тёмный Лес - место, в котором обнаружение означает верную смерть от рук продвинутых хищников. В этой среде открытое определение чьего-то местоположения равносильно его прямому уничтожению.
В мемпуле Ethereum эти высшие хищники принимают форму «арбитражных ботов». Арбитражные боты обычно ищут в мемпуле определенные типы транзакций (такие как торговая сделка на DEX или обновление оракула) и пытаются опередить их в соответствии с заранее заданным алгоритмом.
Универсальные фронтраннеры ищут любую транзакцию, которую они могли бы выгодно опередить, скопировав ее и подменив адреса своими собственными. Они даже могут выполнить транзакцию и скопировать прибыльные внутренние транзакции, сгенерированные в ходе ее выполнения.

Ниже перевод статьи Дэна Робинсона "Ethereum is a Dark Forest" о проблеме эксплуатации уязвимых смарт-контрактов в контексте концепции Темного Леса. Для независимого исследователя обнаружение уязвимости это лишь полдела, не менее важная часть это правильная её эксплуатация, ведь за всем что происходит в мемпуле ведётся тщательная слежка желающими перехватить халявные деньги в автоматическом режиме:
https://cryptooffensive.com/ethereum-%d1%8d%d1%82%d0%be-%d1%82%d1%91%d0%bc%d0%bd%d1%8b%d0%b9-%d0%bb%d0%b5%d1%81/
Crypto Offensive Ethereum это Тёмный Лес Перевод статьи Ethereum is a Dark Forest Авторы: Dan Robinson, Georgios Konstantopoulos Это жуткая история. Вызов Как любой нормальный человек, я провожу много времени, таясь на канале #support в Д…
Post #38 1.64K
#vuln #polygon

Охотник за багами заработал $2 миллиона, найдя критическую уязвимость в Polygon Plasma Bridge. Под угрозой было $850 миллионов.
Ошибка была в том, что Merkle path одной и той же withdraw-транзакции из Polygon в Ethereum можно было закодировать кучей вариантов, и поэтому вывести одни и те же деньги из Polygon много раз.

https://medium.com/immunefi/polygon-double-spend-bug-fix-postmortem-2m-bounty-5a1db09db7f1
Medium Polygon Double-Spend Bug Fix Postmortem — $2m Bounty Summary
Post #37 1.41K
Чат: https://t.me/cryptooffensive_chat

3 правила:
1) white hat only. За блечерские посты будем банить
2) разрешен любой оффтоп, но по окончанию всё что далеко от тематики - будем тереть
3) не задавайте мета-вопросов вроде "разбирается ли кто-то в ...", сразу пишите весь вопрос по сути: https://nometa.xyz/

Да пребудет с вами сила!)
Telegram Crypto Offensive Chat 👽 Чат канала https://t.me/cryptooffensive WHITE HAT ONLY!
Post #36 1.38K
#hack

Взломан AVATerra Finance - сервис для yield farming на блокчейне Avalanche.
Весь "взлом" - получение большого количества токенов через вызов публичной функции mint и их продажа.
AVATerra - форк сервиса Goose (блокчейн BSC), в который были добавлены дополнительные функции, в том числе mint.
https://twitter.com/RugDocIO/status/1451067795140005891
По информации из Telegram-чата AVATerra, оставшаяся в сервисе часть депозитов будет направлена на оплату аудита новой версии контрактов.
Twitter Rugdoc.io Earlier today @avaterrafinance suffered an exploit. Their chef contract is a Goose fork, but their token contained custom elements...including this mint function anyone could call. So someone called it and minted and dumped thousands of tokens. This is why…
Post #32 1.31K
#cryptography

Неразличимая обфускация кода - следующая крутая тема в криптографии.

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

Однако, в 2013 году вышла бумага https://eprint.iacr.org/2013/451 об успешном создании неразличимого обфускатора. Представьте, что есть две различные программы A и B, которые выдают один и тот же результат. Обфускатор O генерирует программы X=O(A) и Y=O(B). O является неразличимым обфускатором, если имея программы X и Y невозможно различить, какая из них получена из A, а какая из B.

Пускай программа A содержит в себе пароль, рассчитывает и выдает хеш пароля, а программа B содержит только готовый хеш и выдает его. Прогнав A и B через неразличимый обфускатор O, мы получаем программы O(A) и O(B).
Можно ли (за адекватное время) вытащить пароль из O(A)? Пойдем от противного - допустим, что мы можем извлечь пароль из O(A), но тогда в силу свойства неразличимости мы также можем извлечь пароль из O(B). Но ни в B ни тем более в O(B) никогда и не было пароля, а только его хеш. А значит допущение неверно, и из O(A) невозможно вытащить пароль.

Это открывает огромные возможности! Представьте, что private переменная в solidity в полном смысле является private, то есть ее невозможно прочесть из блокчейна. Мы сможем создавать обфусцированные смарт-контракты, которые содержат конфиденциальную информацию, такую как приватные ключи от других блокчейнов (что позволит строить trustless-мосты), данные для доступа к фиатным банковским счетам или даже SSH-ключи для доступа к серверам. Для взаимодействия с внешней средой больше не нужны будут подходы с мультисигами, имеющие огромную дыру в виде необходимости доверия к держателям ключей. Посредники останутся нужны только для пересылки сетевых пакетов во внешний мир, но никак не смогут вмешаться в процессы аутентификации.

P.S. на сегодняшний день это далеко от готовности к коммерческому применению. Имеющиеся техники превращают короткие простые программы в гигантские громоздкие полотна
Post #31 1.55K
#hack

43 eth в токенах вознаграждения вывели из контракта стейкинга NFT StackedToads - в массиве id в запросе передали один id много раз, и контракт для каждого раза посчитал "да, токены выдать"

https://twitter.com/0xwave/status/1448752767917453314?s=21
Twitter wave Identified the exploit mechanism on @StackedToads The claimRewards fn allows for the same staked token ID to be passed in the input array an arbitrary number of times. So claimRewards for [1392, 1392] gives 2x [1392] Attacker just stuffed as many IDs as they…
Post #28 1.88K
#cryptography #schnorr #vuln

В ноябре в Биткоине начнут работать подписи Шнорра. Кошельки, биржи и другие сервисы постепенно будут их внедрять. Разработчикам нужно помнить о такой ошибке, как повторное использование nonce, которая иногда встречается в реализациях ECDSA и позволяет восстановить секретный ключ. Со Шнорром точно такая же история: https://ecc2017.cs.ru.nl/slides/ecc2017-tibouchi.pdf

Эта бага ранее была много где от Playstation3 до blockchain·com, и живет до сих пор в многих блокчейнах.

Пример уязвимого #BTC-адреса: 1CUSKYar1yGBAg3MHWhC3sYhTfBQqc2sTN

В подписях в его двух транзакциях траты ca8f3a25744ae2859f4a5d219274d9e3ae97c23c201a618c543de76640a97ba6
и
378eb2c5b7dadbba35c79c5a370b48db052a80d44b0e0361b39a9c129c86120e

присутствует одинаковое R:
436c023f2e07cdf9a51e884c35037594c930caf7c2c0d0008ac35d10d4de99fc

что позволяет из остальных данных из транзакций вычислить K:
K = (H1-H2)/(S1-S2)

и секретный ключ:
Sk = (S1*K-H1)/R = KypfcAANPUhYdxAzwNvHvHu1gcV4Bh6KVhkCNnVGVjHh1Hq11LzR

который соответствует адресу 1CUSKYar1yGBAg3MHWhC3sYhTfBQqc2sTN
Post #27 1.61K
#tools

Декомпиляторы Solidity:

https://ethervm.io/decompile - онлайн-декомпилятор solidity

https://contract-library.com/ - библиотека контрактов с исходниками и декомпилятором

UPD (thnx @deepcode):
https://eveem.org/ - декомпиляция в псевдокод, похожий на Python

https://www.trustlook.com/services/smart.html (скроллить до раздела "Online tool") - декомпиляция в помесь Solidity и ассемблера

https://oko.palkeo.com/
"Oko contract explorer" Когда контракт верифицирован на Etherscan - берёт код оттуда, а если нет - декомпилирует через Panoramix (как на eveem.org)
Dedaub Dedaub Security Suite Smart contract security, monitoring, and analytics for EVM blockchains.
  • 👍 1
Post #25 1.67K
#vuln

Блокчейн Zilliqa #ZIL известен первой реализацией шардинга.
Сегодня на hackerone опубликовали репорт о забавном критикал баге.
Ноды в шарде обмениваются между собой сообщениями по gossip-протоколу. Для подтверждения достоверности сообщения подписываются ключами нод.
Атакующий мог отправить в сеть по gossip-протоколу сообщение с транзакцией, переводящей все деньги с кошелька любой ноды на свой кошелек, и эта нода передала бы сообщение дальше со своей подписью. Транзакция получается полностью валидная, подписанная

https://hackerone.com/reports/1058879
HackerOne Zilliqa disclosed on HackerOne: Using gossip to drain miner wallets ## Summary: Using a flaw in the gossip protocol, a malicious shard member can trick any other fellow shard member into signing an arbitrary message. One way this can be exploited is by creating a...
Post #23 1.49K
#hack #bsc.

В продолжение темы #Reentrancy: разбор взлома #SURGE 16.08.2021 на русском. Контракт токена принимает BNB и делает выплаты. В контракте есть защита от reentrancy, но она недостаточно полная, что позволило атакующему повлиять на вычисление цены токена и вывести все BNB на сумму 4M$

https://cryptooffensive.com/инцидент-с-surgedefi-reentrancy/
Crypto Offensive Инцидент с SurgeDEFI: Reentrancy Для ознакомления: Что такое reentrancy Код контракта: Это BEP-20 с таким функционалом: пользователь может купить токены SURGE, для этого он отправляет BNB контракту, контракт вычисляет соответствую…
Post #21 1.56K

Forwarded from DEFI Scam Check

Баг в Compound привел к ошибочному начислению ревордов 240K $COMP

Роберт Лешнер уточнил, что баг произошел вследствии принятого предложения от сообщества, содержал в себе ошибку в 1 строке кода, но т к апгрейд протокол требует около недели, 240к монет COMP ($70М) были извлечены эксплоитерами.

Около 40К $COMP ($13M) еще лежат на баг-контракте и будут извлечены далее в ближайшее время.

Согласно твиттер ресерчеру Mudit Gupta:

«Ошибка возникает, когда кто-то предоставляет займ протоколу Compound токены с нулевым вознаграждением от Compound, например cSUSHI и cTUSD.

Функция`supplyIndex` для таких токенов остается равным` compInitialIndex`, что означает, что блок if на L1217 не запускается.

Проверка должна была быть> =, а не>. Поскольку блок if не запускается, «supplierIndex» остается равным 0, а «supplyIndex» равно 1e36. Дельта индексов становится равной 1e36, и протокол выплачивает вознаграждение за индексы 1e36, а не предполагаемое нулевое вознаграждение».

По факту, часть из токенов взята вайтхакером, остальные эксплоитеры имеют KYC c биржами Okex, Huobi и будут идентифицированы.

Код = закон, однако можно предположить и такой вариант: если у инкассаторской машины во время езды выпадет мешок с деньгами на проезжую часть, это является по прежнему собственностью банка, так и здесь в случае с багом эмиссии, продажа одного из эксплоитеров 9 тысяч токенов на Okex и Huobi - была фактом ограбления Compound.

https://twitter.com/Mudit__Gupta/status/1443454935639609345

Дополнение по токенам COMP, украденным из протокола:

- $20M to rawiz.eth (по сообщению - вайт хакер)
- $27M to 0xf4bf (дампит и переместил на другой адрес)
- $9M to 0x2e4a (держит)
- $9M to 0x3af01 (держит)
- $6M to 0xf3f5 (продал все)

https://twitter.com/0xngmi/status/1443442885618278407
Twitter Mudit Gupta Compound Incident Analysis: Compound upgraded their comptroller contract to etherscan.io/address/0x374a… which had a one letter bug on L1217. This led to a reverse rug pull in which Comptroller is giving away more rewards to (past) Suppliers than expected.…
Post #19 2.06K
#xmr #privacy

Кольцевая подпись в Monero смешивает 1 настоящий тратящийся юзером выход транзакции с 10 другими случайно выбранными выходами транзакций ("примеси"). При чем для стороннего наблюдателя должно быть непонятно, какой 1 из 11 выходов настоящий, а какие являются примесями.
Изначально в Monero примеси выбирались с одинаковой вероятностью, но в транзакциях чаще встречались свежие выходы, чем старые, из-за того что юзеры Monero значительно чаще тратят свежие монеты, чем старые. Поэтому атакующий приватность мог с большой вероятностью отделить настоящий txo от примесей.
В 2018 алгоритм выбора примесей подкрутили и вместо равномерного распределения стали использовать гамма-распределение, которое позволило чаще выбирать свежие txo в качестве примесей. Если случайный выбор примесей падал на txo из свежайших 10 блоков, они просто отбрасывались, потому что как известно в Monero нельзя тратить монеты возрастом менее 10 блоков. Это снова приводило к искажению, поэтому в 2019 алгоритм подкрутили, чтобы распределение считалось не с верхушки блокчейна, а начиная с 10го блока с конца.
Наконец в последнем апгрейде 0.17.2.3 от 31.08.2021 решили опять считать распределение с начала блокчейна, но если случайный выбор падает на txo из свежайших 10 блоков, то не просто отбрасывать их, а перераспределять выбор на txo из следующих 50 блоков. Логика здесь такова, что если юзер решил потратить монеты из свежих 10 блоков, которые тратить запрещено протоколом, то он подождет и все равно потратит их скоро. Таким образом, теперь выбор примесей соответствует естественному поведению юзеров и настоящие txo органично теряются среди примесей

https://www.getmonero.org/2021/09/20/post-mortem-of-decoy-selection-bugs.html
getmonero.org, The Monero Project Blog: Post-Mortem of Decoy Selection Bugs Patched in official wallet, update highly recommended
Post #18 2.26K
#hack

Ресёрчер умудрился высосать ликвидность с кастодиальных Lightning Network сервисов (Bitfinex, LNMarkets, Southxchange). Суть в следующем: атакующий сначала пополняет свой аккаунт через #LN, потом выводит со своего аккаунта монеты через LN в канал, к которому ведет один единственный маршрут, проходящий через специальную подставную LN-ноду, которая берет большую комиссию за маршрутизацию платежей. Если сервис не сильно заморачивается о комиссиях в Lightning Network (LN это же дешево, да?), то при многократном проведении платежей он может растерять на комиссиях все биткоины. Так, ресерчеру удалось автоматизировать процесс и высасывать ликвидность со скоростью до 0.04 #BTC в час.

LNMarkets залатали дырку. Bitfinex и Southxchange до сих пор уязвимы

https://www.reddit.com/r/Bitcoin/comments/pqjcvo/stealing_sats_from_the_lightning_network/
Reddit From the Bitcoin community on Reddit: Stealing Sats from the Lightning Network Custodial Services Explore this post and more from the Bitcoin community
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →