Treasure exploit 분석
2022. 8. 29. 18:36
Security/Smart Contract
2022년 3월 Treasure라는 NFT 거래 플랫폼이 공격받았습니다. 해당 취약점에 대해서 알아보겠습니다. 해당 프로젝트는 Arbitrum 체인 상에서 동작하며 실제 공격이 이뤄진 트랜잭션은 아래와 같습니다. https://arbiscan.io/tx/0x82a5ff772c186fb3f62bf9a8461aeadd8ea0904025c3330a4d247822ff34bc02 Arbitrum Transaction Hash (Txhash) Details | Arbiscan Arbitrum (ETH) detailed transaction info for txhash 0x82a5ff772c186fb3f62bf9a8461aeadd8ea0904025c3330a4d247822ff34bc02. The transaction..
Multichain exploit 분석
2022. 8. 29. 14:44
Security/Smart Contract
2022년 1월 발생한 Multichain exploit분석자료입니다. 해당 사건에 대한 post mortem은 아래 링크에서 확인하실 수 있습니다. https://medium.com/multichainorg/multichain-contract-vulnerability-post-mortem-d37bfab237c8 Multichain Contract Vulnerability Post Mortem On January 10, 2022, we were alerted to two critical vulnerabilities with the Multichain liquidity pool contract and router contract by… medium.com https://etherscan.io/tx/0xe5..
[Unhacked CTF] reaper write-up
2022. 8. 26. 17:25
Security/Smart Contract
최근 Web 3.0의 워게임들이 많이 늘어나고 있는 추세입니다. 얼마전 열렸던 paradigm CTF과 같이 Web 3.0 환경을 대상으로만 하는 대회도 점차 늘고 있습니다. 이번 주에 처음으로 공개된 Unhacked CTF의 문제를 함께 풀어보겠습니다. Unhacked CTF unhacked CTF는 매주 문제가 공개되는 CTF로 일반적인 CTF형식은 아니며 일종의 워게임의 형식을 띄고 있습니다. 실제 리얼월드에서 exploit 되었던 프로젝트의 코드를 제공하며 해당 코드를 분석해보고 실제 포크된 환경에서 exploit을 진행해보는 식으로 문제를 풀이하게 됩니다. 이번주에 첫 문제가 공개되었고 해당 문제의 링크를 통해 확인할 수 있습니다. 개인적으로 굉장히 흥미로운 형태의 CTF이며 과연 이런 퀄리티의..
[Smart Contract 취약점] 초기 진입자가 다른 유저의 자금 탈취가 가능한 경우
2022. 8. 2. 22:54
Security/Smart Contract
개요 꽤 잦은 빈도로 보이는 유형의 취약점이다. 주로 DEFI 프로젝트에서 발견되고 정확히 어떻게 피해가 발생되고 원인은 무엇인지 알고 테스트를 통해 실제 공격은 어떻게 이루어지는지 알아보고자 한다. 문제의 식 여러 DEFI 프로젝트를 보다보니 staking 토큰을 분배하는 식이 아래와 같이 설정되어있는 경우가 많았다. DEFI의 LP 토큰을 분배하는 데에도 사용된다. (Uniswap v1에서 사용되었다.) 앞전에 분석했던 인절미의 경우도 해당 식을 사용하고 있다. 해당 식을 분석해보자. PENG 토큰이 있고 해당 토큰을 스테이킹하면 그 지분을 증명하는 뜻으로 sPENG이 발행된다고 가정해보자. 그렇다면 PENG 토큰을 스테이킹 했을 때 받을 수 있는 sPENG의 계산은 이렇다. 스테이킹 할 PENG 수..
Ethernaut 정리
2022. 6. 3. 21:23
Security/Smart Contract
CoinFlip 완전한 랜덤을 구하는 법은 없으며 직접 구현하려 하지 말고 널리사용되고 있는 랜덤 생성 방법을 사용할 것. Telephone tx.origin은 트랜젝션을 시작한 사람의 주소가 담겨있음. msg.sender에는 함수를 call 한 주소가 담겨있음. function transfer(address _to, uint _value) { tokens[tx.origin] -= _value; tokens[_to] += _value; } 이런식으로 transfer를 구현하는 경우 피싱 컨트랙트를 만들 수 있음. function () payable { token.transfer(attackerAddress, 10000); } 이런 형태의 피싱 컨트랙트를 공격자가 만들고 해당 컨트랙트로 입금을 하도록 유도..
[Pwnable 기초] Buffer Overflow취약점과 쉘코드
2020. 11. 10. 16:29
Security/Pwnable
간단한 예시를 통해 버퍼오버플로우에 대해서 알아보겠습니다. 소스코드 다운로드 : wget https://raw.githubusercontent.com/ICEB3AR/2020_Whois_Pwnable/main/week1/bof_poc.c 컴파일 : gcc -fno-stack-protector -no-pie -z execstack -o bof_poc bof_poc.c name이라는 char형 10byte배열과 target이라는 int형 변수가 선언되어있습니다. 코드상에서 target값은 0으로 초기화 되었고 이후에 수정되는 부분이 없기 때문에 0에서 바뀌지 않아야 합니다. scanf를 호출할 때 포맷스트링이 "%s"입니다. "%s"는 '\n','\x00', ' '등 문자열 끝을 암시하는 문자가 올때 까지 입..
[CVE-2018-10027] 알집 load malicious DLL 취약점 분석
2020. 8. 21. 19:07
Security/Windows Exploit
CVE Details: https://www.cvedetails.com/cve/CVE-2018-10027/ 개요 알집 10.76 이하 버전에서 %PROGRAMFILES%\ESTsoft\ALZip\Formats, %PROGRAMFILES%\ESTsoft\ALZip\Coders, %PROGRAMFILES(X86)%\ESTsoft\ALZip\Formats, %PROGRAMFILES(X86)%\ESTsoft\ALZip\Coders 세 경로에 포함된 DLL파일을 모두 로드하여 임의 코드 실행이 가능합니다. 취약점 탐색 %PROGRAMFILES(X86)%\ESTsoft\ALZip\Formats에 1.dll파일을 위치시킵니다. windbg에서 알집을 실행하고 lm명령으로 로드된 모듈을 확인하면 1.dll이 로드된 것..
[CVE-2011-1336]알집 mim 파일 버퍼 오버플로우 분석
2020. 8. 17. 20:32
Security/Windows Exploit
CVE Details : https://www.cvedetails.com/cve/CVE-2011-1336/ 개요 알집 8.21 이하 버전에서 mim파일을 여는 경우 버퍼 오버플로우가 발생. mim파일이란? Multipurpose Internet Mail Extension files으로 즉 이메일 메세지 파일입니다. 인터넷 상에서 흔히 MIME이라고 불리는 것과 동일한 구조를 가지고 있습니다. 해당 파일에는 이메일 내용과 첨부파일들이 포함되어있습니다. MIME-Version: 1.0 Content-Type: multipart/mixed; boundary=frontier This is a message with multiple parts in MIME format. --frontier Content-Type..
Notepad++ 7.6.2 xml buffer overflow 분석
2020. 7. 23. 00:53
Security/Windows Exploit
취약점 제보글: https://hackerone.com/reports/480883 notepad-plus-plus/PowerEditor/src/Notepad_plus.cpp의 xml파싱 기능중 오버플로우가 존재한다는 내용입니다. Notepad++는 오픈소스 프로젝트로 공식 github에서 소스코드를 다운로드 받을 수 있습니다. https://github.com/notepad-plus-plus/notepad-plus-plus/releases/tag/v7.6.2 취약점이 존재하는 7.6.2버전의 소스코드를 다운로드 받고, 해당 부분을 분석해보겠습니다. 949번째 줄 부터 시작되는 getHtmlXmlEncoding함수입니다. int Notepad_plus::getHtmlXmlEncoding(const TCHA..
아드레날린 2.2.5.3 플레이리스트 파일 wvx overflow 취약점 one day exploit 분석
2020. 7. 14. 22:51
Security/Windows Exploit
exploit-db : https://www.exploit-db.com/exploits/26525 설치파일 : http://software.naver.com/software/summary.nhn?softwareId=MFS_100099 CVE : None 테스팅 환경: Windows 7 Home SP1 1. wvx파일이란? ASX 태그를 사용하고 있지만, asx나 wvx나 똑같은 형식을 취하고 있다고 합니다. (따라서 asx파일또한 크래쉬가 납니다) 위의 코드에서 볼 수 있듯이 단순히 여러 음원파일들이 포함되어있는 플레이리스트 파일입니다. 2. crash 분석 import struct f = open('evil.wvx', 'w') f.write('A'*5000) f.close() A가 5000개 채워진 파..
[Spamandhex 2020 Teaser] Journey #1 (XSS, Webauthn)
2020. 5. 15. 21:08
Security/Web
문제 개요 http://journey.ctf.spamandhex.com/주어진 문제 주소로 접속하면 로그인 화면이 나온다. 기존의 id,password방식으로 로그인 하거나 Passwordless방식으로 로그인할 수 있다. 하지만 정작 passwordless방식으로 가입을 시도하면, 에러가 발생한다. 그래서 일단 넘어갔다. 사이트 하단의 Source버튼으로 express로 짜여진 백엔드의 소스코드를 확인할 수 있다. Books과 Quotes메뉴에선 여러 글귀가 나타나고, Like버튼을 눌러 내 계정의 favorite로 설정할 수 있다. 그리고 하단의 Share버튼으로 Like를 누른 글귀에 대해 공유할 수 있는 창이 뜨게되고, 해당 페이지를 어드민에게 신고할 수 있는 기능이 있다. 신고기능을 누르면, 어..
[SharkyCTF] XXExternalXX write-up (XXE)
2020. 5. 11. 16:24
Security/Web
문제 탐색 주어진 링크로 접속하면 간단한 홈페이지와 Show stored data라는 메뉴가 하나 있다. http://xxexternalxx.sharkyctf.xyz/?xml=data.xml 해당 메뉴로 들어가면 News가 나오고 접속된 주소를 확인해보면 xml이라는 파라미터가 존재한다. xml파라미터를 올바르지 않은 값으로 설정하면 여러 가지 워닝들이 표시가 된다. 이를 보고서 file_get_contents로 파일내용을 가져와서 loadXML로 xml을 파싱한다는 것을 알 수 있다. 취약점 첫번째로 에러를 보여줌으로써 처리되는 과정이 노출되었다. 그중 file_get_contents는 인자로 filepath를 받게되는데, 이때 path가 url이어도 파일을 읽어온다. 즉 임의의 파일을 로드시킬 수 있..
[버그바운티 write-ups] GitLab Path Traversal 취약점
2020. 5. 7. 19:04
Security/Web
원문 : https://hackerone.com/reports/827052 GitLab에서 발견된 Path Traversal 취약점으로 무려 $20,000의 바운티를 받은 보고서입니다. 취약점 및 방법 이처럼 issue를 새로 생성할 때 Description에 Markdown으로 작성할 수 있습니다. 이때 ![file](./filepath) 형식으로 파일에 대한 링크를 삽입할 수 있습니다. 아래에는 filepath로부터 파일을 가져오는 부분의 소스코드입니다. @text.gsub(@pattern) do |markdown| file = find_file(@source_project, $~[:secret], $~[:file]) break markdown unless file.try(:exists?) klass..
[버그바운티 write-ups] OTP Verification bypass
2020. 4. 25. 03:35
Security/Web
원문 : https://medium.com/@rat010/otp-verification-bypass-ee17d68f8425 OTP Verification Bypass Hello guys, I am Kanhaiya Kumar Singh and this is my first write-up about my finding on OTP Bypass. medium.com 취약점 및 방법 간단한 OTP 인증 우회입니다. 이메일 인증을 시도하면 이메일로 전송되는 OTP 코드를 입력해야합니다. 이때 올바른 인증인 경우 200 Created {} 가 응답으로 오게됩니다. 반대로 올바르지 않은 코드인 경우 400 Bad Request {“error”: “user_not_verified”} 가 응답으로 오게되는데, 이때 2..
[BSidesSF 2020 CTF] Recipes Write-up
2020. 3. 2. 03:08
Security/Web
문제 링크 https://recipes-0abb43f9.challenges.bsidessf.net/ 불러오는 중입니다... 문제 상황 I've found this recipe storage service. Rumor has it that the famous San Francisco-based Boudin Bakery is working on a new recipe. Can you get that for me? Boudin Bakery의 새로 개발중인 레시피를 유출해달라는 꽤 신선한 주제의 문제이다. 회원가입을 완료하면 set-cookie로 쿠키를 받게되는데, 이 토큰은 JWT이다. 내용을 보면, sub라는 항목이 유저를 구분하는 역할을 하는 것으로 보인다. 회원가입을 한뒤(로그인) 레시피 메뉴가 생긴다...
[BSidesSF 2020 CTF] SCP-1 Write-up (SCP bypass)
2020. 2. 27. 01:28
Security/Web
문제 개요 https://csp-1-5aa1f221.challenges.bsidessf.net input과 submit이 있고, admin으로 /csp-one-flag를 읽으면 되는 간단한 챌린지. 문제 상황 개발자도구로 응답 헤더의 CSP제약조건을 확인해본다. content-security-policy: script-src 'self' data:; default-src 'self'; connect-src *; report-uri /csp_report 참고 https://developers.google.com/web/fundamentals/security/csp?hl=ko 콘텐츠 보안 정책 | Web | Google Developers 콘텐츠 보안 정책은 최신 브라우저에서 교차 사이트 스크립팅 공격의 위..
[ctf apk문제]CyberTruck Challenge 2019 #Challenge 2
2020. 2. 7. 01:07
Security/Mobile
문제 github https://github.com/nowsecure/cybertruckchallenge19 nowsecure/cybertruckchallenge19 Android security workshop material taught during the CyberTruck Challenge 2019 (Detroit USA). - nowsecure/cybertruckchallenge19 github.com 목표 Challenge1 to unlock car1. "DES key: Completely Keyless. Completely safe" 50pts: There is a secret used to create a DES key. Can you tell me which one? 100pts: The..
[apk hooking tutorial] FridaLab 으로 frida 익히기
2020. 1. 30. 04:19
Security/Mobile
FridaLab란? https://rossmarks.uk/blog/fridalab/ 에서 제공되는 Frida를 익히기 위한 Challenge APK입니다. FridaLab I was struggling with a recent test using frida, knowing it could do what I rossmarks.uk apk파일은 위 링크에서 다운로드 받으실 수 있습니다. 실행해보기 apk파일을 설치해서 실행해보겠습니다. 여러 챌린지를 보여주고 Check버튼이 있습니다. Check 버튼을 누르면 클리어한 챌린지는 초록색으로 변하게 됩니다. 지금은 아무것도 해결하지 못하였기 때문에 전부 빨간색으로 표시됩니다. Challenge 1 1. Change class challenge_01's varia..
[ctf apk문제]CyberTruck Challenge 2019 #Challenge 1
2020. 1. 29. 02:23
Security/Mobile
문제 github https://github.com/nowsecure/cybertruckchallenge19 nowsecure/cybertruckchallenge19 Android security workshop material taught during the CyberTruck Challenge 2019 (Detroit USA). - nowsecure/cybertruckchallenge19 github.com 목표 Challenge1 to unlock car1. "DES key: Completely Keyless. Completely safe" 50pts: There is a secret used to create a DES key. Can you tell me which one? 100pts: The..
[pwnable] 우분투 설치 후 깔아야 하는 것들 모음
2020. 1. 20. 12:50
Security/Pwnable
#update apt sudo apt-get update sudo apt update #install ruby sudo apt -y install ruby #install gdb sudo apt -y install gdb #install peda git clone https://github.com/longld/peda.git ~/peda echo "source ~/peda/peda.py" >> ~/.gdbinit #install peda heap plugin cd ~/ git clone https://github.com/scwuaptx/Pwngdb.git cp ~/Pwngdb/.gdbinit ~/ #install nasm for ropgadget sudo apt-get -y install nasm #in..