Olvasási idő: 6 jegyzőkönyv
Látott már olyan webhelyet, amely hosszú betöltési időt vett igénybe, de azt tapasztalta, hogy pillanatnyilag nem lehet megnyitni? Ez egyszerűen csak a szolgáltatásmegtagadási támadások hatásáról szól.
A szolgáltatásmegtagadási (DoS) támadások egyike azon számos sebezhetőségnek, amelyekre az intelligens szerződések auditálása során nagy figyelmet fordítanak. Ennek a blognak az a célja, hogy feloldja a DoS támadás csínját-bínját – mi az, hatása, típusai és még sok minden, amivel kiegészíthető.
Gyorsan szálljunk be, és fedezzük fel mindegyiket.
Mi az a DoS támadás?
A DoS támadás célja, hogy megzavarja egy hálózat, szerver vagy alkalmazás feldolgozási képességeit, megakadályozva a jogos felhasználók kérésének fogadását. Ebben a támadó túlterheli a hálózatot azzal, hogy több forgalmat küld, ami kimeríti a szerverek memóriáját és sávszélességét.
A blokkláncban rejlő hatalmas potenciál miatt ezek jelentik a gazdagság ellopását célzó DoS-támadások elsődleges célpontját. A leghíresebb kriptovaluták, mint például a Bitcoin, Ethereumstb. is tapasztaltak DoS támadásokat.
Elosztott szolgáltatáscsökkenés (DDoS)
Az elosztott szolgáltatásmegtagadás (DDoS) egy olyan DoS-támadás, amelyben a támadó több eszközt vezérel, hogy támadást indítson a célcsomópont ellen.
A támadó megfigyeli a célcsomópontot, és az irányítása alatt álló több eszközt csatornába irányítja, hogy nagy mennyiségű információt küldjön el a célcsomópontra. Emiatt a cél összeomlik, és nem tudja teljesíteni a megadott feladatot.
DoS támadások célpontjai a blokklánc ökoszisztémában
A DoS támadások múltbeli eseményeiről készült felvételek alapján a blokklánc ökoszisztéma minden része ki van téve a DoS támadásoknak. És hogy néhányat említsünk,
Kriptovaluta pénztárcák: Mint minden pénztárcánál, a kriptovaluta pénztárcát is kriptovaluták tárolására, küldésére vagy fogadására használják. És ezek az online pénztárcák intelligens szerződéseket használnak, amelyek hajlamosak a DoS támadásokra, amelyek akadályozzák szolgáltatásaikat és a Dapps-szal való interakciót.
Kriptovaluta csereszolgáltatások: Az online platform, ahol kriptovalutákkal kereskednek, és a csere a felhasználók között történik. Ezek a hackerek elsődleges célpontjai olyan DoS támadások végrehajtásában, amelyek a platform és szolgáltatásai elérhetetlenségét okozzák.
Pl.: Bitcoin csereplatform, a Bifinex többször szenvedett DDoS támadást.
Memória(tranzakciós) készletek: A blokkláncon lévő tranzakciókat ellenőrizni kell, mielőtt hozzáadnák őket a blokkhoz. Addig a tranzakciókéréseket a mempool tárolja, amely olyan, mint a meg nem erősített tranzakciók tárháza, amelyek arra várnak, hogy egy bányász kiválasztja őket.
A magas díjú tranzakciót nagy valószínűséggel a bányász választja ki. Így a mempool elárasztása sok tranzakcióval, kis díjakkal azt eredményezi, hogy a felhasználó magas díjat fizet a tranzakció feldolgozásáért. Így a DoS támadás megnövelte a feldolgozási díjat.
A konszenzus résztvevői: Ők azok a játékosok, akik megoldják a logikát, és eldöntik, hogy milyen blokkokat kell hozzáadni a blokklánchoz. Ha DoS-támadásokat indítanak a konszenzusvezető ellen, az az egész rendszert leállítja.
Keverési szolgáltatások: Protokollt alkalmaz a felhasználók számára a tranzakciók anonim végrehajtásához. Különféle módon szenvednek el DoS támadásokat, például túlzott részvételi kérelmeket a keverőkészlethez, inkonzisztens bevitelt a keveréshez stb.
Intelligens szerződések: Az intelligens szerződés a blokklánc minden tranzakciójának mögöttes protokollja. Az intelligens szerződések elleni DoS-támadások összeomolhatják azt a csomópontot, amely leállítja az általa üzemeltetett Dapps működését.
A DoS támadásokat számos lehetséges módon hajtják végre rajtuk, amelyeket a következő részben részletezünk.
Intelligens szerződéses DoS-támadások típusainak elemzése
Az intelligens szerződésekben található DoS sebezhetőség korlátlan erőforrás-felhasználást vagy a szerződés manipulációját eredményezi. Ez a szokásos tevékenységek végrehajtásának felfüggesztéséhez vagy a szerződés logikájának megszakításához és összeomlásához vezet.
Az alábbiakban található az intelligens szerződésekben előforduló különféle DoS támadások osztályozása
Váratlan Revert DoS
Az intelligens szerződések elleni DoS-támadás tanulmányozásához vegyünk egy aukciós szerződést példaként. Az aukciós szerződés minden beérkezett legmagasabb ajánlattal frissül, és visszaadja az előző licitáló ajánlati összegét, mivel az alacsonyabb az aktuális ajánlatnál.
contract Auction {
address frontRunner;
uint256 highestBid;
function bid() public payable {
require(msg.value > highestBid, "Need to be higher than highest bid");
// Refund the old leader, if it fails then revert
require(payable(frontRunner).send(highestBid), "Failed to send Ether");
frontRunner = msg.sender;
highestBid = msg.value;
}
}
A támadó szerződés az aukciós szerződéssel inicializálódik a kivitelezőben, amely hozzáférést kap az aukciós szerződéshez. Ebben az "attack()" függvény meghívásával a támadó zárolja az összeget, és ezáltal nem tudja visszaadni a licit összegét a támadónak, még akkor sem, ha ennél magasabb ajánlatot kap.
import "./Auction.sol";
contract Attacker{
Auction auction;
constructor(Auction _auctionaddr){
auction = Auction(_auctionaddr);
}
function attack (){
auction.bid{value: msg.value}();
}
}
Ennek az az oka, hogy a "támadó" szerződés nem tartalmaz semmilyen "receive()" vagy tartalék függvényt az Ether visszatérítésére, ami a váratlan visszaállást eredményezi. Ez arra készteti a támadót, hogy mindig a legmagasabb ajánlatot tevő legyen.
Blokk gázkorlát DoS
A blokknak van egy maximális elkölthető gázhatára, amely arányos az elvégzendő számítási munka mennyiségével. A gázkorlát túllépése kétféle DoS támadáshoz vezet.
Gas Limit DoS – Korlátlan szerződéses működés
Van egy meghatározott gázkorlát, és ha a tranzakciók elérik a beállított limitnél magasabb gázkorlátot, az tranzakció meghiúsul.
Még rosszabbá válik, ha a támadó manipulálja a szükséges gázt. Ez az, amikor a támadó hozzáad néhány címet egy nagyon csekély visszatérítésért. Minden visszatérítés gázdíjba kerül; így a gázköltség meghaladja azt a határt, amely megakadályozza a visszatérítési tranzakciókat.
struct Payee {
address addr;
uint256 value;
}
Payee[] payees;
uint256 nextPayeeIndex;
function payOut() {
uint256 i = nextPayeeIndex;
while (i < payees.length && msg.gas > 200000) {
payees[i].addr.send(payees[i].value);
i++;
}
nextPayeeIndex = i;
}
Ezért a szükséges lépéseket figyelembe kell venni egy tömbön keresztüli hurok megvalósítása során.
Blokk töltelék
A támadó azért kezdeményezi ezt a támadást, hogy megakadályozza a tranzakciók blokkokhoz való hozzáadását azáltal, hogy számításigényes tranzakciókat küld magas gázárakkal. Több tranzakció is hasonló módon történik a teljes gázlimit fogyasztására.
A magas gázdíj megfizetésével a támadó biztosítja, hogy csak a tervezett tranzakciók kerüljenek a blokkokhoz, a többit elhagyva.
Tulajdonosi intézkedés
Minden szerződés rendelkezik tulajdonosi címmel, aki jogosult tranzakciókat nyitni vagy felfüggeszteni. A teljes művelet a tulajdonos címétől függ, így ha elveszik, akkor a felhasználó egyáltalán nem tud tokeneket küldeni, és a szerződés működése összeomlik.
A DoS támadás hatása
A blokktömés egyike azon számos hatásnak, amelyek megakadályozzák, hogy jogos tranzakciók kerüljenek a blokkokhoz. A DoS-támadásoknak azonban számos egyéb hatása is van.
Duzzadt főkönyv: A blokklánc főkönyv az a hely, ahol a tranzakciókat folyamatosan rögzítik. A blokklánc csomópontok tárolják a tranzakciók másolatát, hogy ellenőrizzék a dupla ráfordítást. A DoS támadás felduzzaszthatja a főkönyvet spam tranzakciókkal.
Hálózati forgalom: Ismerjük a peer-to-peer módon alapuló blokklánc-funkciókat. A blokklánc minden csomópontja megkapja a tranzakció másolatát. A DoS elárasztás nagy tranzakciós mennyiséget eredményezhet, ami felemészti a hálózati sávszélességet.
Csomóponti hibák: Blockchain funkciók azokon a csomópontokon, amelyek nagy mennyiségű adat kezeléséhez a szoftver támogatását igénylik. A tranzakció elárasztása során előfordulhat, hogy a csomópontok memóriája elfogy, ami leállítja a műveleteket.
Szoftver összeomlás: Amint megbeszéltük, a mempool vagy blokkok bizonyos korlátokkal rendelkeznek a hozzájuk rendelt memória tekintetében. A szoftver a beállított limiten belül fogadja, feldolgozza és tárolja a tranzakciókat. Amikor a bejövő tranzakciók túllépik a beépített korlátokat, a szoftver összeomlik.
Tartsa vissza az intelligens szerződéseket a DoS támadásoktól
A DoS támadások elemzéséből a következő módszerek alkalmazhatók a támadások mérséklésére.
rejtvények: A szerverek rejtvényeket generálhatnak, mint például memóriarejtvények, időzár-rejtvények, CPU-hoz kötött rejtvények stb. Ahhoz, hogy a felhasználó hozzáférjen egy szolgáltatáshoz, meg kell oldani a rejtvényeket, ami felveszi a harcot a spam támadásokkal.
Díjalapú megközelítés: A blokkláncra extra díjat számíthatnak fel, például bányászati medencék bányászati díjait, tranzakciós díjakat stb. Ez költségessé teszi a DoS-hacket a támadók számára, ezáltal visszaszorítja az ilyen támadásokat.
Záró megjegyzés
Intelligens szerződés auditálás elvégzése a címen QuillAudits keresi a kódolásban rejlő lehetséges sebezhetőségeket. Ezek közé tartozik az újbóli belépési sebezhetőség, a tárolási ütközések, a véletlenszerű támadás, a szolgáltatásmegtagadás és így tovább.
Ez egyértelműen azt jelenti intelligens szerződések alaposan tesztelték, hogy mentesek legyenek a szolgáltatásmegtagadási támadásoktól. Ez biztosítja, hogy projektje védve legyen a Web3-terület lehetséges sebezhetőségei ellen.
Figyelje Telegram csatornánkat, hogy összegyűjtse szolgáltatásainkkal kapcsolatos legfrissebb információkat: https://t.me/quillhash
13 Nézetek
- Bitcoin
- blockchain
- blokklánc megfelelőség
- blockchain konferencia
- coinbase
- coingenius
- megegyezés
- kriptokonferencia
- kriptikus bányászat
- cryptocurrency
- decentralizált
- Defi
- Digitális eszközök
- Ethereum
- gépi tanulás
- nem helyettesíthető token
- Plató
- plato ai
- Platón adatintelligencia
- Platoblockchain
- PlatoData
- platogaming
- Poligon
- a tét igazolása
- Quillhash
- Intelligens szerződés-ellenőrzés
- Intelligens szerződésbiztonság
- Intelligens szerződések
- trend
- W3
- zephyrnet