본문으로 건너뛰기
SaferICO SaferICO스마트 컨트랙트 보안
다섯 겹 — 각 겹이 자기 사각지대를 적습니다

깊이가 곧 제품입니다.

대부분의 스캐너가 건네는 것은 심각도순으로 정렬된 발견 목록입니다. SaferICO는 그 발견들을 실제로 그것들을 쓰게 될 공격 경로로 엮고, 주장하는 고리마다 증거를 붙입니다. 발견 하나는 한 줄이고, 공격 하나는 여러 줄의 조합입니다 — 저희가 찾는 것은 후자입니다.

생성이 아니라 연역모든 경로는 코드가 엮음사각지대를 리포트에 인쇄결코 '안전하다'고 말하지 않음
//다섯 개의 층

표면에서 조합까지

순서는 편집상의 배치가 아닙니다. 각 층은 앞 층이 만들어 낸 것을 소비하며, 각 층의 정의는 무엇을 잡아내는가만큼이나 무엇을 잡아내지 못하는가로도 이루어집니다. 이 사각지대들이 여기 인쇄된 이유는 리포트에 인쇄된 이유와 같습니다: 사거리를 감추는 도구는 보정할 수 없는 도구입니다.

1층 · 탐지 — 사용자의 브라우저에서 도는 정적 분석

201개 탐지기가 Solidity 소스를 훑습니다: 확인하지 않은 반환값, 재진입 형태, 발행과 자금 인출 경로, owner의 권한, 프록시와 업그레이드 경로, 그리고 시뮬레이션된 매수·매도 — 허니팟에 빠지기 전에 알아보게 합니다. 엔진은 사용자의 기기에서 돌고, 공개하지 않은 컨트랙트가 한 번 읽히자고 업로드되지 않습니다. 사각지대: 어떤 경로가 컨트랙트가 실제로 만나게 될 수치에서도 도달 가능한가. 이 층은 아무것도 실행하지 않으며, 그 아래 모든 층도 마찬가지입니다.

2층 · 대조 — 파일 자체가 말할 수 없는 것

소스는 하나의 주장이고, 배포된 바이트코드가 사실입니다. 이 층은 디스패처를 읽어 컨트랙트가 실제로 노출하는 셀렉터를 얻고, 시그니처 말뭉치와 대조해 원시 calldata에 이름을 붙이고, 라이브러리 코드를 빼서 손으로 쓴 줄만 남기고 — 감사자가 가장 먼저 읽어야 할 것이 바로 그것입니다 — 어떤 주소의 자금이 어디서 왔는지 보고하며, 각 답에 그것을 만들어 낸 명단의 출처를 붙입니다. 사각지대: 의도, 그리고 아무도 불러오지 않은 명단. 이 제품에는 어떤 제재 명단도 컴파일되어 있지 않습니다. 라벨 명단이 하나도 로드되지 않았을 때, 리포트는 사용자가 '이미 걸러졌다'고 오해할 수 있는 깨끗한 결과를 돌려주는 대신 그 사실을 그대로 말합니다.

3층 · 조합 — 위의 증거로 21개의 공격 경로를 세웁니다

각 경로에는 질문이 하나씩 붙습니다 — '지분 하나를 비싸게 만들어서 실제 입금이 0지분을 사게 만들 수 있는가?' — 그리고 전제 조건 목록과, 각 조건이 차지하는 가중치가 붙습니다. 스캔이 그 필수 전제 조건을 실제로 증명했을 때만 이 경로가 나가고, 조건마다 증거가 붙습니다. 코드가 그 경로를 떠받치지 못하면 그 경로는 나타나지 않습니다. 사각지대: 온체인 실시간 상태 — 잔액, 유동성 깊이, 개인키를 누가 쥐고 있는지, owner가 멀티시그인지. 여기서 신뢰도는 '증명된 전제 조건의 비율'이지, 결코 '공격이 성공할 확률'이 아닙니다.

4층 · 설명 — AI는 엄격히 증거의 하류에 있습니다

모델의 일은 3층이 이미 경로를 확립한 다음에야 시작됩니다: 그 경로를, 방어자가 막을 수 있을 만큼 충분히 독자 자신의 언어로 설명하는 일입니다. 시나리오를 생성하라는 요구를 받지도 않고, 추가할 수도 없습니다 — 자신만만하고 반증할 수 없는 가짜 공격 목록은 그 하나의 진짜 발견을 그 아래 묻어 버리기 때문입니다. 사각지대: 의도. 어떤 특권 설계가 실수인지, 누군가 의도한 결정인지는 알려 줄 수 없습니다.

5층 · 기록 — 브라우저 탭보다 오래 사는 발견

모든 발견을 심각도, 증거, 수정 방법과 함께 남깁니다. 전달된 리포트의 공개 아카이브. '체인에서 직접 읽은 현황'과 '누군가 되돌려 준 점수'를 엄격히 나누고 후자에는 날짜를 붙이는 배지. 그리고 리포트에 서명이 들어간 뒤에도 그 주소를 계속 지켜보는 모니터링 — 어떤 컨트랙트든 통과한 다음 주에 owner가 바뀔 수 있으니까요. 포함하지 않는 것: '안전하다'는 어떤 단언도. 리포트는 무엇을 시험했고 무엇이 성립했는지를 진술합니다 — 안전을 약속하는 리포트는 의심받아야 할 리포트입니다.

절제: 언어 모델이 써낸 공격 경로는 0개

모든 경로는 코드가 탐지기 출력에서 조합해 낸 것이고, 주장하는 전제 조건마다 증거가 붙습니다. AI는 이미 존재하는 경로를 설명할 뿐, 하나를 더할 능력은 애초에 없습니다. 규모와 깊이와 절제는 서로 다른 세 가지 주장이며, 여기서는 그것을 나눠서 말합니다.

도구 자체(스캐너, 콘솔, SAFI 워크스페이스)의 화면은 아직 영어입니다. 이 페이지들은 그 안으로 들어가기 전에 무엇을 하게 되는지 한국어로 끝까지 설명해 드립니다.

하나의 조합이 만들어지는 모습

ATK-VAULT-INFLATION: 받아들여진 약점 둘과 빈 풀 하나. 3층이 1층의 산출물로 하는 일이 바로 이것입니다 — 아래 두 조각은 따로 보면 심각한 문제가 아니고, 심각도순으로 정렬된 발견 목록이 이것을 숨기는 이유가 정확히 그것입니다.

🏦 이 형태는 가상이 아닙니다

Euler Finance는 같은 방식으로 지렛대가 걸리는 회계 방식 때문에 1억 9,700만 달러를 잃었습니다.

먼저 첫 예치자가 되어 정확히 1지분을 발행합니다. 그다음 큰 금액을 컨트랙트에 직접 보내면, 새 지분 없이 뒤에 깔린 자산만 늘어납니다. 다음 정직한 예치는 새로운 1지분 가격보다 작아서, 받을 수 있는 지분이 0으로 내림됩니다. 그들의 돈이 옮겨진 것이 아닙니다 — 산술이 그것을 흡수해 당신의 그 1지분을 떠받치는 데 썼을 뿐입니다.

01탐지가 증거를 제공합니다

지분 조작 탐지기 하나와 내림 탐지기 하나가 발동했고, 이 컨트랙트는 가치를 직접 받을 수 있습니다. 발견 세 건이며, 그중 심각 등급은 하나도 없고, 목록의 서로 다른 자리에 흩어져 있습니다.

02대조가 형태를 확인합니다

함수 표에는 MIN_, deadShares, initialMint 같은 이름이 하나도 존재하지 않습니다.

배포된 셀렉터를 읽는 것이야말로 '존재하지 않는다'와 '읽지 못했다'를 가르는 경계입니다: 그 데드 셰어 방어는 읽히지 않은 것이 아니라 없는 것입니다.

03조합이 이 경로를 냅니다

필요한 전제 조건이 전부 충족되어 이 경로가 나가고, 조건마다 증거가 붙으며, 신뢰도는 스캔이 그중 얼마만큼을 증명했는지를 정확히 말해 줍니다.

수정 방법: 배포 시 데드 셰어를 발행하거나 내부적으로 따로 회계하기. 지분 지급의 내림 방향을 예치자에게 유리하게 바꾸기. 0지분이 발행될 예치를 거부하기.

04설명이 수순을 적습니다

위의 네 단계를, 독자 자신의 언어로, 그 경로를 막을 수 있을 만큼 충분히.

이 단계가 마지막인 이유는 모델이 관여하는 유일한 고리이기 때문이며 — 그 입력은 앞의 세 층이 이미 증명해 둔 것입니다.

//자주 묻는 질문

이 다섯 겹에 관하여

왜 '사각지대'를 강조하나요?
사거리를 감추는 도구는 보정할 수 없는 도구이기 때문입니다. 각 층의 사각지대는 이 페이지에도, 리포트에도 인쇄되며 — 이유는 완전히 같습니다.
AI가 공격 경로를 스스로 지어내나요?
아니며, 그럴 수도 없습니다. 모든 경로는 코드가 탐지기 출력에서 조합하고 전제 조건마다 증거를 붙입니다. 모델의 일은 4층에서야 시작됩니다: 이미 확립된 경로를 설명하는 것. 하나를 더할 능력은 애초에 없습니다.
신뢰도가 공격 성공 확률인가요?
아닙니다. '증명된 전제 조건의 비율'이며 그 이상은 아닙니다. 온체인 실시간 상태 — 잔액, 유동성 깊이, 개인키를 누가 쥐고 있는지, owner가 멀티시그인지 — 는 전부 이 층의 사각지대에 있습니다.
리포트가 제 컨트랙트를 안전하다고 말해 주나요?
결코 아닙니다. 리포트는 무엇을 시험했고 무엇이 성립했는지를 진술합니다. 안전을 약속하는 리포트는 의심받아야 할 리포트입니다.
스캔이 제 소스를 여러분에게 보내나요?
아닙니다. 201개 탐지기 엔진은 스캔하는 사람 자신의 브라우저에서 돌고, 공개하지 않은 컨트랙트가 한 번 읽히자고 저희 서버로 업로드되지 않습니다.

송금하기 전에 컨트랙트부터 확인하세요

컨트랙트 주소를 붙여넣으면 위험을 감수하기 전에 소유자 권한, 유동성, 매도 시뮬레이션 결과를 볼 수 있습니다. 스캔 한 번마다 소액의 수수료가 있고 서명 전에 금액이 먼저 표시됩니다 — 요금제를 구독하면 횟수 제한 없이 포함됩니다.