위험 경고: '가상화폐', '블록체인'이라는 이름으로 불법 자금 모집 위험에 주의하세요. — 은행보험감독관리위원회 등 5개 부처
검색
로그인
简中
繁中
English
日本語
한국어
ภาษาไทย
Tiếng Việt
BTC
ETH
HTX
SOL
BNB
시장 동향 보기

Delayed Pixiu의 구현 원칙과 예방 조치를 이해하려면 이 기사를 읽으십시오.

南枳
Odaily资深作者
2023-10-09 08:12
이 기사는 약 1780자로, 전체를 읽는 데 약 3분이 소요됩니다
암호화폐의 어두운 숲에서는 악의적인 개발자의 수법이 끊임없이 확대되고 있습니다.

오리지널 - 오데일리

저자 - Nan Zhi

토큰 픽시우(Token Pixiu)는 일반적으로 특정 토큰을 구매할 수만 있고 판매할 수 없는 상황을 말하며, 개발자는 수익을 창출하기 위해 일정 시간이 지난 후 LP를 제거하고 구매자를 끌어당깁니다. 지연된 Pixiu는 토큰이 처음 거래를 위해 열릴 때 짧은 시간 내에 거래가 가능하며 이후 Pixiu 상태가 됩니다. 이러한 유형의 러그 풀 기술의 경우,많은 계약 탐지 도구에는 아직 해당 탐지 기능이 추가되지 않았습니다., 악성 개발자의 주요 수익 방법 중 하나가되고 있습니다.

아래에서 Odaily는 ERC 20 및 Uniswap의 원리에 대한 간략한 개요를 통해 Delay Pixiu가 어떻게 구현되는지 설명합니다.

참고: 기사의 일부 비유는 이해하기 쉽도록 완전히 엄격하지는 않습니다.

ERC 20 기본

시중의 대부분의 토큰은 ERC-20 표준을 준수합니다. ERC-20이란 무엇입니까? ChatGPT의 답변은 다음과 같습니다.

ERC-20은 토큰 계약을 정의하는 이더리움 블록체인의 토큰 표준입니다.반드시 따라야 할 일련의 규칙그리고 인터페이스. 이 표준은 이체, 잔액 조회, 타인을 대신하여 토큰을 사용할 수 있는 권한 등을 포함한 토큰의 기본 기능을 표준화합니다.

다음은 주요 ERC-20 토큰 표준 규칙 및 기능 중 일부입니다.

  • 전송: ERC-20 토큰은 스마트 계약을 통해 전송될 수 있으므로 사용자는 토큰을 다른 이더리움 주소로 보낼 수 있습니다.

  • 잔액 쿼리(BalanceOf): 사용자는 ERC-20 토큰 잔액을 쿼리하여 자신이 소유한 토큰 수를 확인할 수 있습니다.

잔액 조회(BalanceOf):

실제로 이 함수에는 쿼리 기능이 있을 뿐만 아니라 사용자가 소유한 토큰 수도 이 함수로 정의됩니다. 각 토큰은 은행으로 이해될 수 있으며, 각 지갑 주소는 토큰 거래 후 은행으로부터 예금 카드를 얻어 각 주소의 잔액(Balance)을 기록합니다. 즉, 은행에 신청할 수 있습니다. 잔액을 확인하시거나, 거래를 위해 은행에 자산변경을 요청하실 수 있습니다.

참고: 이더리움은 계정 기반 모델을 채택합니다.

따라서 사용자는 본질적으로 자신의 자산을 소유하는 것이 아니라 사용할 수 있는 토큰의 수가 기능에 의해 정의됩니다.

  • 즉: [A 계정]의 X 토큰 잔액 = 계정 A가 외부에서 사용할 수 있는 X 토큰 수

참고: 현실 세계의 은행 예금은 고객에 대한 은행의 부채이며 은행은 자산 소유권을 갖습니다.

옮기다

모든 ERC-20 토큰은 전송 기능을 완료해야 하며, 이전 원장 모델을 기준으로 전송이 발생하면 A 계정에서 B 계정으로 토큰을 전달하는 것이 아니라 A 계정에서 차감됩니다. X, 토큰 수 X가 계정 B에 추가됩니다.

  • 즉, [A 계좌]-X 잔액과 [B 계좌]+X 잔액을 동시에

개발자는 전송 기능을 수정하여 전송 횟수, 전송 대상자 등을 제한할 수 있습니다.

전달 함수는 대부분의 Pixiu 메커니즘의 기본 소스입니다.

Uniswap

이전 섹션에서는 각 토큰을 은행으로 비유했는데, 여기서 Uniswap은 xy=k라는 AMM 원칙을 통해 두 개의 토큰을 교환하는 수용 중개자로 이해될 수 있습니다.

교환 과정은 다음과 같습니다.

  • 사용자는 토큰 A를 Uniswap 계약으로 전송합니다.

  • 유니스왑은받은 토큰, y=k/x를 통해 반환되어야 하는 토큰을 계산하고 처리 수수료를 차감합니다.

  • Uniswap은 토큰 A를 LP 풀로 전송하고 토큰 B를 인출합니다.

  • Uniswap은 토큰 B를 사용자에게 전송합니다.

물론 Uniswap에는 실제로 여러 기능과 프로세스가 포함되어 있는데 여기서 이해해야 할 핵심은Uniswap은 받은 토큰을 기반으로 한 거래만 합니다.이며, 사용자가 이체 작업을 수행할 때 금액이 변경되었을 수 있습니다.

Pixiu 메커니즘

이 섹션에서 Pixiu 메커니즘은 두 가지 범주로 나뉩니다.

① 높은 거래세로 인해 사용자는 판매 토큰으로부터 리베이트를 받지 못합니다.

② 전송이 불가능하여 사용자가 Uniswap에서 거래를 할 수 없게 됩니다.

높은 거래세

이 섹션에서는 아래와 같이 거래세가 포함된 Meme 코인의 계산 과정을 보여줍니다(빨간색 부분만 집중).

  1. 거래세 계산

  2. 사용자 지갑에서 전액 공제(BalancerOf[사용자]가 토큰 A를 감소)

  3. 개발자 지갑이나 LP 등의 주소로 자금 이체(BalancerOf[Dev]는 토큰 A × 세금 S 증가)

  4. 일부 토큰을 Uniswap으로 전송하여 토큰 B(토큰 A×(1-S))로 교환합니다.

  5. 사용자가 토큰 B를 충분히 받지 못했습니다.

이전 섹션에서 언급했듯이 Uniswap은 “받은 토큰”가 처리되며 개발자는 Uniswap과 사용자에게 전송되는 금액을 마음대로 수정할 수 있습니다.

여기서 거래세율을 100%로 수정하면 3단계인 3단계 개발자 지갑이나 LP 및 기타 주소로 전송이 구현되며, 사용자는 더 이상 토큰을 받을 수 없습니다.

이전할 수 없습니다.

Solidity에서 개발자는 다음을 통해 트랜잭션을 제한할 수 있습니다.

개발자라면특정 화이트리스트 주소로 토큰 교환을 제한합니다., 그러면 사용자는 자신의 손에 있는 토큰을 Uniswap으로 보낼 수 없습니다. 그런 다음 두 번째 단계 ② 사용자 지갑에서 돈을 차감에서 Pixiu가 구현되고 개발자는 Uniswap의 라우터에서 토큰을 보낼 수 있도록 설정할 수 있으며 결과는 다음과 같습니다. 이다:

사용자는 구매할 수만 있고(Uniswap은 사용자에게 토큰을 전송함) 판매할 수는 없습니다(ETH 등을 위해 토큰을 Uniswap으로 전송할 수 없기 때문).

또는 개발자는 전송 제한을 0으로 설정하고, 트랜잭션 스위치를 끄고, 다양한 경로를 통해 기타 작업을 수행할 수 있지만 결국에는 전송 동작을 모두 제어합니다.

지연된 픽시우

시간(블록 높이)을 제한함으로써 추가 지연이 달성됩니다.

예를 들어 특정 토큰의 제한 사항은 다음과 같습니다.

    require(block.number < _allowance)

블록 높이가 증가함에 따라 사용자는 특정 임계값에 도달하면 전송할 수 없게 되어 Pixiu를 실현하게 됩니다.

또한, 거래 횟수가 일정 기준치에 도달하면 구현되는 픽시우(Pixiu)도 있는데, 이러한 지연형 픽시우의 경우 특정 계약 보안 탐지 도구를 점검할 때 타겟 설정이 없으면 초기 상황에서 정상적으로 거래가 가능해 사용자를 유도할 수 있다. 함정에 빠지다.

예방하는 방법

이런 종류의 수확 방법이 강아지 털기에서 흔히 볼 수 있다는 사실을 고려하여 구매자는 효율성을 추구하고 안전을 무시하는 경우가 많으며 성숙한 보안 회사가 이 방법에 대한 특별한 탐지 도구를 출시하는 것을 아직 본 적이 없으므로 Odaily는 다음과 같이 상기시킵니다. 자신의 자산을 위해 특정 코딩 능력을 갖춘 구매자도 계약 코드를 검토하고(또는 ChatGPT와 같은 도구를 사용하여 간략하게 살펴보고) 셀페어 계약에 특별한 주의를 기울이고 멀리 떨어져 있어야 합니다. 특이한 코드 영역이 포함된 프로젝트.

Uniswap
Meme
Odaily 공식 커뮤니티에 가입하세요