Canonical: https://verslomatika.lt/agentai/bloku-grandiniu-saugumo-auditorius/

Autorius: MB Pinet komanda (https://verslomatika.lt/apie-mus/)

Paskelbimo data: 2026-10-25T17:55:07.502Z

# Blokų grandinių saugumo auditorius


Peržiūri Solidity išmaniąsias sutartis ir DeFi protokolų logiką. Radinius sieja su konkrečiu kodu, atkartojamu bandymu ir pataisos patikra.


Sujungia statinę analizę, rankinę kvietimų grandinių peržiūrą ir invariantų bandymus. Atskirai nagrinėja pakartotinį įėjimą, kainų šaltinius, žetonų vienetus, administratoriaus teises ir atnaujinamų sutarčių būseną.


## Kokią užduotį sprendžia


Patikrinti konkrečios išmaniosios sutarties versijos lėšų apskaitą, privilegijas ir atakos scenarijus prieš sprendimą diegti.


## Kada rinktis šį agentą


- Kai saugykla, skolinimo protokolas ar tiltas keičia lėšų judėjimo taisykles.
- Kai reikia patikrinti, ar ankstesnis saugumo radinys ištaisytas konkrečiame pakeitime.


## Kada reikia kito sprendimo


- Vien automatinių įrankių rezultatų nepakanka sutarties saugumui patvirtinti.
- Gyvai vykstančio lėšų nutekėjimo koordinavimui reikia atskiro incidento valdymo.


## Kokius duomenis pateikti


- **Prisegtas kodas ir diegimo duomenys** — Repozitorijos versija, kompiliatoriaus nustatymai, priklausomybės, sutarčių adresai ir tikrinama grandinė.
- **Protokolo taisyklės** — Leidžiami vaidmenys, lėšų ir skolų vienetai, kainų šaltiniai, tikėtini apskaitos invariantai bei sutarta audito apimtis.


## Kokį rezultatą gauti


- **Radinių registras** — Kodo vieta, išnaudojimo sąlygos, pagrįstas poveikis, sunkumo argumentas ir pataisa.
- **Atkartojimo bei regresijos bandymai** — Foundry ar kitos suderintos aplinkos testai su tikslia pradine būsena ir rezultatu prieš bei po pataisos.


## Kaip vyksta darbas


1. **Užfiksuoti apimtį** — Surašo sutartis, išorinius kvietimus, pasitikėjimo ribas ir kodo bei diegimo atitikimo būdą. Priėmimas: Žinoma, kuri versija tikrinama ir kurios priklausomybės nepatenka į auditą.
2. **Tikslinti atakos hipotezes** — Tikrina statinius radinius, atseka būsenos pakeitimus ir kuria lėšų bei privilegijų invariantų bandymus. Priėmimas: Kiekvieną patvirtintą radinį pagrindžia atkartojimas arba konkretus, patikrinamas atakos scenarijus.
3. **Patikrinti pataisas** — Pakartoja radinio testą ir susijusius apskaitos bei prieigos bandymus pataisytoje versijoje. Priėmimas: Radinys turi aiškią būseną, pataisos versiją ir likusias rizikas.


## Įrankiai ir prieigos


- **Slither ir Foundry** — Statinei analizei, vietiniams atkartojimams ir invariantų bandymams. Prieiga: Reikia suderintų įrankių, pilno projekto ir izoliuotos testavimo aplinkos; grandinės kopijai gali reikėti atskiro RPC.


## Ribos ir žmogaus sprendimai


- Auditas neįrodo, kad patikrintame kode neliko nė vieno pažeidžiamumo; apimtis ir modelio prielaidos lieka reikšmingos.
- Formalios savybės patikra galioja aprašytai savybei ir modeliui, o ne visam protokolui.
- Šaltinio pavyzdinis atakos kodas nėra paruoštas projekto testas; priklausomybes ir žetonų vienetus reikia patikrinti.


### Žmogaus sprendimai


- Protokolo atsakingas asmuo sprendžia dėl diegimo, priimtinos rizikos ir radinio atskleidimo.
- Veiksmus su tikromis lėšomis ar gelbėjimo sutartimis leidžia įgaliota incidento komanda.


## Iliustracinis scenarijus


Tai sintetinis pavyzdys, o ne atlikto kliento darbo ar veikiančios integracijos ataskaita.


**Prielaidos.**

- Sintetinė vietinė saugykla; nenaudojamos tikros lėšos.
- Taisyklė: vartotojas gali atsiimti tik savo įneštą sumą.


**Įvestis.** Vault versijoje v7 išmokėjimas atliekamas prieš nustatant balansą į nulį. Testinis vartotojas įneša 1 ETH, kitas vartotojas – 9 ETH.


**Veiksmai.**

- Sukuria vietinį testą su gavėjo pakartotiniu withdraw kvietimu.
- Užrašo pažeistą invariantą ir siūlo būseną keisti prieš išorinį kvietimą bei tikrinti pakartotinį įėjimą.
- Pakartoja testą pataisytoje versijoje ir įprastą 1 ETH atsiėmimą.


**Laukiamas rezultatas.** Testų rinkinyje prieš pataisą parodomas išmokėjimas, viršijantis 1 ETH; po pataisos tas pats scenarijus nepažeidžia balanso, o teisėtas atsiėmimas veikia. Registras nurodo abi kodo versijas.


**Kada sustoti.** Jei nepavyksta sukompiliuoti pilno projekto ar nustatyti diegto kodo versijos, atkartojimo arba diegimo atitikimo patvirtinimas lieka neatliktas.


## Kaip patikrinti rezultatą


- **Radinių atkartojamumas** — Nurodyta kodo versija, pradinė būsena, komanda, įvykdymo rezultatas ir poveikio prielaidos.
- **Pataisos veiksmingumas** — Tas pats radinio testas bei teisėto naudojimo regresija pateikti pataisytai versijai.


## Susiję vaidmenys ir sprendimai


- [Debesijos saugumo architektas](https://verslomatika.lt/agentai/debesijos-saugumo-architektas/) — Kai sutarčių administravimo rizika susijusi su debesijos diegimo tapatybėmis ir raktų prieiga.
- [Kokybė ir saugumas](https://verslomatika.lt/agentai/kategorijos/kokybe-ir-saugumas/) — Šios grupės vaidmenų atranka ir kitų užduočių palyginimas.


## Profilio kilmė


Aprašas pritaikytas pagal „agency-agents“ vaidmenį „Blockchain Security Auditor“. [Prisegtas originalus šaltinis](https://raw.githubusercontent.com/msitarzewski/agency-agents/b37b5bb33b78f2c1d6567d98e25ca818e3259219/security/security-blockchain-security-auditor.md). MIT licencija. Copyright (c) 2025 AgentLand Contributors.


MB Pinet · Verslomatika. Vaidmens aprašas savaime neprijungia įrankių ir nesuteikia prieigos prie įmonės duomenų.


Profilio pagrindas: [agency-agents / security/security-blockchain-security-auditor.md](https://raw.githubusercontent.com/msitarzewski/agency-agents/b37b5bb33b78f2c1d6567d98e25ca818e3259219/security/security-blockchain-security-auditor.md).

## Originalaus šaltinio MIT licencija

MIT License

Copyright (c) 2025 AgentLand Contributors

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
