728x90
반응형
소프트웨어 해킹? Vulnerability
- 개론 -Write by a2sembly
소프트웨어 취약점 종류
1. Mmory corruption
2. Logic errors
3. Information leakage
4. Command / Code injetion
5. Resoruce exhaustion
Native - Reversing
- 구조, 기능, 구현에 대한 분석을 통해 대상의 기술 원리를 알아내고 이해하는 것
- EveryWhere using!
- ex) 게임 해킹, 악성코드 분석, 레거시 코드 복원, 취약점 분석
Native - Memory corruption
Memory buffer voerflow
1. 스택
2. 힙
- 할당된 메모리 영역보다 더 큰 데이터를 쓰면서 발생하는 취약점
- 오버플로우를 통해 중요 데이터를 덮어쓰는 것이 공격의 핵심
Stack buffer overflow
Heap buffer overflow
Use-after-free
- 해제 된 메모리 영역을 예전 레퍼런스 포인터로 재사용할 경우 발생
Information disclosure
- 개발자가 의도한 데이터 양보다 더 많은 내용을 출력하게 되어, 추가적인 메모리 내용을 읽게 됨
- ex) OpenSSL 하트블리드 취약점
Web - Client-side attacks
Cross Site Scripting / XSS
CoRS Misconfiguration
- SOP 제약사항을 안전하게 해결하기 위해 서버가 허용하는 화이트리스트 도메인을 지정하는 CORS
- But, wildcard로 설정되어 있을 경우 XSS/CSRF 등에 취약
Web - Server-side attacks
File inclusion
- Local File Inclusion
- Remote File Inclusion
- Directory Traversal
- XML External Entity Injection
Script / Query injection
- Server Side Request Forgery (SSRF)
- Command Injection
- SQL Injection
- Server Side Template Injection (SSTI)
Web - Container security
- LXC, LXD, Docker ....
- 컨테이너 대상 공격 표면 및 발생 가능 취약점
- 컨테이너 <-> 리눅스 커널
- 컨테이너 탈출
- 호스트의 파일시스템 액세스, 호스트에서 root권한 프로세스 실행
- 컨테이너 이미지 내 취약점 관리 미흡
Web - Denial of Service
- Cpu exhaustion with bad regex (ReDos)
- 무한 재귀함수 호출 유도를 통한 메모리 과부하
- Hanging하는 여러 네트워크 커넥션 생성
- 큰 리소스나 컴퓨팅하는데 오래 걸리는 task 요청
Mobile
Dependency 관리 미흡
- 개발을 효율적으로 하기 위한 프레임워크 및 라이브러리 관리 미흡으로 인해 발생
URL Scheme
- Custom URL Scheme 등록으로 특정 앱에서 처리되는데, 인자들에 대한 검증 미흡으로 인해 발생하는 취약점
Mobile-Reversing
- Dalvik ByteCode는 거의 원형으로 디컴파일 가능
- IOS Objective-C는 native로 컴파일 되지만, Class/Function 노출
Tip
- Secure Coding
- 각 언어와 플랫폼에 맞는 시큐어 코딩 가이드를 참조하여 개발
- 정적 분석 툴을 사용하여 취약점 점검
- Fuzzing 등을 통한 보안성 테스트 및 취약점 점검 및 패치
- 주기적인 업데이트 및 방어기법 사용
- 모바일의 경우 권한 관리 및 제한을 수행하고, Certificate Pinning을 통한 MITM 방어
- Android, IOS 등 디컴파일의 가능성이 있는 경우, 난독화 솔루션을 사용
728x90
반응형
'공부 > Reverse Engineering' 카테고리의 다른 글
중국 세무 프로그램에서 설치되는 백도어(Backdoor) (0) | 2024.06.20 |
---|---|
스택(Stack) - sfp / ret (0) | 2021.02.19 |
Shellcode (0) | 2021.02.16 |
Test about Ransomware Behavior by Deactivating Trim in SSD - CryptoShield (0) | 2021.01.08 |
Dharma, GandCrab, CLOP 동적분석 (0) | 2021.01.06 |