Shang
Blog 👨‍💻
  • 🌸Introduction
  • 💻WEB SECURITY
    • Research Vulnerability
      • 📲Server-side topics
        • 🔏API Testing
        • 🔏Race conditions
        • 🔏XML external entity (XXE) injection
        • 🔏Server-side request forgery (SSRF)
        • 🔏File upload vulnerabilities
        • 🔏Access control vulnerabilities and privilege escalation
        • 🔏Business logic vulnerabilities
        • 🔏OS Command injection
        • 🔏Directory traversal
        • 🔏Authentication vulnerabilities
        • 🔏SQL injection
      • 📱Client-side topics
        • 🔏DOM-based vulnerabilities
        • 🔏Cross-origin resource sharing (CORS)
        • 🔏WebSockets
        • 🔏Clickjacking (UI redressing)
        • 🔏Cross-site request forgery (CSRF)
        • 🔏Cross-site scripting(XSS)
      • 🌀Advanced topics
        • 🔐Web cache poisoning
        • 🔐HTTP request smuggling
        • 🔐Prototype pollution
        • 🔐Server-side template injection(SSTI)
        • 🔐Insucure deserialization
    • Learn Java Vulnerability
      • Intro & Setup
      • Java Reflection Part 1
      • Java Reflection Part 2
    • Research Documents
      • 🎯DNS Rebinding
      • 🍪Remote Code Execution - Insecure Deserialization
      • 🍪Remote Code Execution on Jinja - SSTI Lab
      • 🍪Exploit cross-site request forgery (CSRF) - Lab
      • 🍪Exploit a misconfigured CORS - Lab
      • 🍪Same Origin Policy (SOP) - Lab
  • 📝WRITE-UP CTF
    • CTF Competitions
      • 🔰[WolvCTF 2023] Writeup Web
      • 🔰[M☆CTF Training 2023] Writeup Web
      • 🔰[HackTM CTF 2023] Writeup Web
      • 🔰[Incognito 4.0 2023] Writeup Web
      • 🔰[LA CTF 2023] Re-writeup Web
      • 🔰[Dice CTF 2023] Writeup Web
      • 🔰[ByteBandits CTF 2023] Writeup Web
      • 🔰[Knight CTF 2023] Writeup Web
      • 🔰[Sekai CTF 2022] Writeup Web
      • 🔰[WRECK CTF 2022] Writeup Web
      • 🔰[Maple CTF 2022] Writeup Web
    • CTF WarGame
      • ✏️[Root me] Writeup Sever Side
      • ✏️Websec.fr
      • ✏️[Root me] Writeup XSS Challenge
    • [tsug0d]-MAWC
      • 💉TSULOTT
      • 💉IQTEST
      • 🧬TooManyCrypto
      • 🧬NumberMakeup
    • Pwnable.vn
Powered by GitBook
On this page
  • Mở đầu
  • Giới thiệu về Reflection
  • Lợi ích của Reflection
  • Nhược điểm của Reflection
  1. WEB SECURITY
  2. Learn Java Vulnerability

Java Reflection Part 1

PreviousIntro & SetupNextJava Reflection Part 2

Last updated 9 months ago

Mở đầu

Để tiếp tục chuỗi serie Java Security 101 này chúng ta cần biết về những kiến thức java, đặc biệt java reflection và lỗ hổng.

Giới thiệu về Reflection

Java reflection là một tính năng của java, cho phép chương trình kiểm tra và thay đổi hành vi của các object tại runtime. Điều này có nghĩa là bạn có thể truy cập vào class, method, properties của các object khi chương trình đang chạy ngay cả khi chúng ta không biết trước chúng là gì

Lợi ích của Reflection

  • Khám pháp và sử dụng các class và method mới: Reflection cho phép các ứng dụng linh hoạt hơn, như các IDE, trình phân tích mã, hoặc các framework như Spring và Hibernate.

  • Thực hiện các tác vụ phức tạp: Reflection giúp các thư viện và framework thực hiện các tác vụ mà không cần biết trước chi tiết về các lớp mà chúng tương tác.

  • Kiểm tra và kiểm tra đơn vị: Reflection có thể được sử dụng để kiểm tra các lớp và phương thức mà không cần tạo các trường hợp thử nghiệm cụ thể.

Nhược điểm của Reflection

  • Hiệu suất: Reflection chậm hơn so với truy cập trực tiếp vào các lớp và phương thức do sự kiểm tra và xử lý tại runtime.

  • Bảo mật: Sử dụng Reflection có thể phá vỡ các nguyên tắc bảo mật, vì nó có thể truy cập vào các thành phần riêng tư của lớp.

  • Phức tạp: Reflection làm cho mã trở nên khó đọc và bảo trì hơn.

💻
Insucure Deserialization