목록전체 글 (65)
Tyojong
개요심각도 : High언어 : Solidity취약점 유형 : Logic Bug이 리포트는 NUTS Finance 프로젝트에서 MixBytes가 발견한 ChainlinkCompositedOracleProvider의 price() 함수 정밀도(precision) 및 스케일(scaling) 처리 로직 결함에 대한 취약점에 대해 설명한다. price() 함수가 고정소수점 정밀도를 잘못 처리한다. 여러 번 피드(oracle feed)를 합성할 때, 각 피드가 inverted(역산) 여부에 따라 두 가지 로직을 따르게 만든다. 영향 받는 코드1. isInverted == true (역산 oracle 피드)누적값(accumulator)에 (10^assetDecimals) * (10^feed.decimals()) / ..
개요심각도 : Medium언어 : Solidity취약점 유형 : Logic Bug이 보고서는 Funnel 프로젝트의 FunnelVaultUpgradeable 컨트랙트가 HyperCore로 트랜잭션을 전송할 수 없는 구조적 결함에 대해 설명한다. 취약점 설명FunnelVaultUpgradeable 컨트랙트에서 sendNativeTokenToLayer1() 함수는 HyperEVM에서 HyperCore로 HYPE 토큰을 브릿지 전송한다.HyperCore로 브릿지한 뒤, 자금은 HyperCore 네트워크 상 FunnelVaultUpgradeable가 HyperEVM에서 HyperCore로 트랜잭션을 생성·전송하는 메커니즘을 구현하지 않았다.즉, HyperCore로 들어간 자금을 HyperCore에서 실제 이체하..
개요심각도 : Medium언어 : Solidity취약점 유형 : Logic Bug이 보고서는 Funnel 프로젝트에서 Pashov Audit Group이 발견한 swapTokens 함수의 토큰 스왑 시, out 토큰이 네이티브(예: ETH)일 때 SwapX 라우터의 수수료를 적절히 처리하지 않는 취약점에 대해 설명한다. swapTokens 함수가 SwapX 라우터를 통해 토큰을 스왑할 때, out 토큰이 네이티브(예: ETH)라면 SwapX 라우터는 실제로 사용자의 수신 금액에서 수수료를 공제(fee)한다.하지만 swapTokens 함수(및 FunnelVault)는 swap 결과로 반환받는 out amount(토큰 수량)가 수수료 제하기 전의 값이라고 잘못 가정한다.실제로 사용자 지갑에는 수수료가 제해진..
개요심각도 : Critical언어 : Solidity프로토콜 : Terplayer BVT Staking & Distribution]취약점 유형 : Underflow, Logic Bug이 리포트는 Terplayer BVT Staking & Distribution 프로토콜의 출금 (withdrawal) 로직에서 발견된 취약점에 대해 설명한다. 출금 함수에서 사용자 자신이 본인의 delegation list(위임 목록)에 포함된다.모든 계산에서 ceil(올림) 나눗셈을 사용해, delegation된 전체 금액(totalDelegatedAmount)이 요청 출금금액을 초과하게 된다.그 결과, remainingAmout = amout - totalDelegatedAmout 계산에서 언더플로우가 발생해 전체 출금이..
개요심각도 : High언어 : Solidity프로토콜 : Terplayer BVT Staking & Distribution취약점 유형 : Logic Bug이 리포트는 Terplayer BVT Staking & Distribution 프로토콜에서 Level 5 계정을 가진 사용자가 시스템의 12% 커미션을 우회할 수 있는 취약점에 대해 설명한다. Level 5 계정은 일반적으로 recipientComission 주소로 12%의 커미션을 내야한다.악의적인 사용자는 새 계정을 만든 뒤, 부모 계정을 자신의 Level 5 계정으로 지정한다.새 계정에서 자산을 입금하면 이 과정에서 12% 커미션이 본인 Level 5 계정으로 지급된다.결국 실질적으로 본인은 2% 커미션만 내고, 12%에 해당하는 자산을 추가로 획..
보호되어 있는 글입니다.
보호되어 있는 글입니다.
제공된 파일은 관리자 권한 계정과 6.8.2버전(대회 당일 기준 최신 버전)이 자동 설치되는 파일만 제공되었다.rce를 이용해 readflag파일을 실행시키면 플래그를 획득할 수 있다. rce를 위해 php테마 파일 수정, 악성 플러그인 업로드 등을 시도했지만 모두 불가능 하였다... 제공된 도커파일을 확인해보면 pearcmd파일이 남아있는 것을 알 수 있다.이 pearcmd를 실행시켜 rce를 가능하게 하려면 lfi 취약점을 찾아야한다. if ( wp_using_themes() ) { $tag_templates = array( 'is_embed' => 'get_embed_template', 'is_404' => 'get_404_template', 'i..
보호되어 있는 글입니다.
문제 설명이 문제는 Fallback, receive 함수가 잘못 설정되었을 때 발생할 수 있는 취약점을 학습할 수 있다.이 문제를 해결하기 위해서는 컨트랙트의 소유권을 획득하고 컨트랙트 잔고를 0으로 만든다.(모든 이더를 빼낸다.) 코드 분석배포자를 owner로 설정하고 owner의 초기 기여금을 1000 ETH로 설정한다. contribute() 함수는 0.001 ETH 미만의 금액만 받을 수 있고 받은 기여금을 저장한다.호출자의 기여금이 소유자의 기여금보다 많으면 owner(소유권)을 이전한다. 호출자의 현재 기여금을 알려주는 읽기 전용 함수이다. 호출자가 소유자인지 확인하는 제한자이다. 제한자가 적용되어 있는 함수로 소유자만 호출 가능하다.소유자 주소를 payable 타입으로 캐스팅하고 (ETH를 ..
