HACKING24 Tool#1 LLVM 난독화 해제 도구 - D-810 목차 0. LLVM 을 이용한 난독화 1. 설치 환경 2. D-810 기능 3. D-810 한계 4. 결론 0. LLVM 을 이용한 난독화 0) 수식 : x를 "1^1^0^x^0^(1&0)" 이와 같은 형식으로 수식을 덧입혀 코드 난독화 1) Bogus Flow Control : 함수 시작 앞에 무의미한 로직 삽입 2) control flow flattening : 함수 분할 후, switch와 state valuable를 이용해서 로직 흐름 난독화 3) goto dispatch : 함수 분할 후, goto 문을 이용해 로직 흐름 난독화 4) call dispatch : 함수 내 블록을 함수로 변경한 후, 스택 내 function pointer(state valuable)를 이용해 블록 로직 실행 1. .. 2022. 3. 9. [ kubernetesgoat5 ] Hidden in layers [ kubernetes-goat#5 Hidden in layers ] Table of contents #0 개요 #1 Forensics #2 대응 방안 #0 개요 도커 이미지는 이용자가 명령을 수행한 결과인 레이어의 모음집이다. 만약 이용자가 Dockerfile을 이용해 빌드한 이미지를 공격자가 이를 획득할 수 있다면, 겹겹히 쌓인 레이어들을 분석하므로써 실행한 명령어와 내용을 확인할 수 있다. #2 Forensics 1) 기본이미지에 실행된 명령어 확인 Dockerfile이 없는 상태에서 docker history 를 조회하여 실행된 명령어 확인 가능 docker history --no-trunc madhuakula/k8s-goat-hidden-in-layers 2) alpine/dfimage를 이용해.. 2021. 9. 7. [ kubernetesgoat3 ] RBAC Least Privileges Misconfiguration [ kubernetes-goat#3 RBAC Least Privileges Misconfiguration ] Table of contents #0 개요 #1 Role Authorization MisConfiguration #2 대응 방안 #0 개요 #1 Role Authorization MisConfiguration yaml 파일 분석 결과 User에게 모든 자원에 대한 접근을 허용함을 알 수 있다. User에게 모든 자원에 접근 가능한 권한을 부여하여, 쿠버네티스 API를 이용해 big-monolith namespace 안에서 Secret 에 접근해 중요 정보인 secret 추출 가능하다. curl --cacert ${CACERT} --header "Authorization: Bearer ${TOKEN.. 2021. 9. 6. [ kubernetes-goat2 ] DIND [ kubernetes-goat#2 DIND ] Table of contents #0 개요 #1 Commnad Injection #2 Docker MisConfiguration - 컨테이너 볼륨 제어 #3 Docker MisConfiguration - 컨테이너 권한 제어 #3 대응 방안 #0 개요 취약점 항목 : Command Injection, Docker Configuration - 컨테이너 네트워크 제어 취약점#1 : 입력 값 검증이 미흡하여 시스템 명령어로 전달되는 값 변조를 통해 공격자는 컨테이너 내부 시스템 명령어 실행이 가능합니다. 취약점#2 : 호스트 파일 접근 제어 설정이 미흡하므로 공격자는 Command Injection과 호스트 파일을 이용해 호스트 docker 명령어 실행을 통한 자.. 2021. 8. 31. Setting#0 Ubuntu환경에서 Docker를 이용한 Dokuwiki 세팅 Ubuntu에서 Docker를 이용해 Dokuwiki를 세팅하고 싶으신가요? [ Setting#0 Ubuntu환경에서 Docker를 이용한 Dokuwiki 세팅 ] Table of contents #1 Concept #2 Setting #3 Explain #1. Concept dokuwiki란? 문서 관리 협업 시스템 #2 Setting sudo mkdir /mnt/dokuwiki sudo wget https://raw.githubusercontent.com/splitbrain/dokuwiki-downloader/master/dokuwiki-downloader.php -O /mnt/dokuwiki/install.php sudo chown -R www-data:www-data /mnt/dokuwiki su.. 2021. 5. 26. Tool#0 Burp suite 이용 방법 Burp suite를 이용하고 싶으신가요? [ Tool#0 How to use Burp suite ] Table of contents #0 Using Burp suite for Web #1 Using Burp suite for Android Application Packet Proxy Server는 Client, Server 사이에 존재하며, Burpsuite에서는 Defualt로 127.0.0.1:8080 IP와 Port 이용해 접속한다. 데스크톱이나 Android가 프록시 서버인 BurpSuite에 접속을 해야만 Burpsuite 프로그램에서 통신 Packet을 확인할 수 있다. 만약 8080 포트에 공격자가 접근 가능하다면, 우리의 통신내용을 훔쳐보는 Sniffing 공격 가능하다. 이를 방지하기 .. 2021. 4. 22. Node.js#1 Prototype Pollution Prototype Pollution이란 ? [ Node.js#1 Prototype Pollution ] Table of contents #0 Introduction #1 3 Concepts #2 Exploit #3 Conclusion #0 Introduction 11년 전에 발표된 Software Platform인 Node.js는 현재 15.12.0 버전까지 출시됐으며, Server, Client 개발 언어(Javascript)의 통일로 인한 언어 습득 시간 감소, I/O 작업 도중에도 User Process 작업 중단이 이뤄지지 않는 Non-Blocking I/O 방식을 통한 효율적인 처리가 가능하기 때문에 현재는 주요 Network Application 개발을 위한 Software Platform으로.. 2021. 3. 22. Node.js#0 Pug Template XSS(Cross Site Scripting) Client에서 Server로 부터 변수를 받을때 이용해야할 문법은 ? !{} vs #{} [ Node.js#0 Pug Template XSS(Cross Site Scripting) ] Table of contents #0 Introduction #1 Vulnerable Code for XSS by using Pug Template "#{}" #2 Security Code for XSS by using Pug Template "!{}" #3 Conclusion #0 Introduction 11년 전에 발표된 Software Platform인 Node.js는 현재 15.12.0 버전까지 출시됐으며, Server, Client 개발 언어(Javascript)의 통일로 인한 언어 습득 시간 감소, I/O 작업.. 2021. 3. 22. Program#1 NDK를 이용한 c언어 프로그램 build Window 환경에서 안드로이드에서 실행할 C 프로그램을 build하고 싶으신가요? Do you want to build c application with NDK on Window to run it on Android? 레고레고 Let's make it happen~! [ Program#1 NDK Build ] Table of contents #0 Download NDK #1 Declaration for the build system #2 Build #3 Check Running binary file #0 Download NDK NDK PACKAGE DOWNLOAD & UNZIP https://developer.android.com/ndk/downloads #1 Declaredeclaration for .. 2020. 8. 30. 이전 1 2 3 다음