*버퍼오버 플로우(Buffer Overflow)
: 메모리 vs 디스크
Process vs Program
카카오톡 설치 시 실행파일이 디스크(비휘발성)에 저장된다.
설치하면 프로그램이 됨 = 디스크에 프로그램이 생김.
exe: 실행 파일 PE (Portable Execute)
> 실행 코드(어셈블리 언어)로 이루어져 있음.
실행시 이 어샘블리 코드가 메모리에 올라감.
메모리에 적재되어 있는 상황을 프로세스, CPU 가 이것을 실행시킴
메모리엔 영역이 있음
동적 메모리는 스택과 힙이라는 공간에 있음. 힙은 malloc 함수 사용, Stack은 메모장과 같은 역활
스택 오버플로우/ 힙 오버 플로우
Register :
스택메모리 외에 CPU 내부에 생성된 기억장치
EIP : Instruction Pointer
[메모리 주소] -> 그 다음에 실행할 명령어가 있는 위치
<공격자가 이걸 원하는 주소로 덮어쓸 수 있음>
ESP: Stack Pointer 스택 크기를 조정하며 스택의 최상단 주소값을 가짐.
EBP: 함수 호출 규약, 스택 프레임 형태로 지정된 함수의 지역변수, 전달인자를 참조하거나 값을 바꾸거나 할 때 사용하는 레지스터
EAX EBX: 데이터 저장
스택 영역에서 사용자의 ID를 받음.
스택에 50글자 버퍼를 준비. 근데 100글자를 넣었을 시 남은 50글자는 초과되어 뒤에 메모리까지 덮어진다.
그런데 덮으면 안되는 EIP부분 까지 덮어버릴 수 있다.
1-4 후 A실행시 그 후 [EIP보고] 5번으로 돌아옴. EIP는 다음 명령어 주소이기 때문에,
여기서 어딘가 올려놓은 쉘의 주소로 EIP를 덮으면 서버나 클라이언트 쉘을 획득할 있다.
Heap Spray: EIP를 공격자가 원하는 코드로 덮어쓸 수 있다.
실습:
normalticAAAAAAAAAA 이렇게 넣으면 EIP 0x4141414141414141 로 바뀌는 것을 볼 수 있다.(A = 41)
툴 어드벤스 서버 키고 lmmunity Dibugger 켜서 attack하면 실행중인 부분에 디버거가 달라붙음
메모리 : : 어셈블러 / Register 부분에서 실습부분 확인
퍼징은 데이터를 넣어보는 과정 : Puzed 에러가 난다. (Access vlolation)
이런 걸 Segmantation fault 라고 함.
*MITM : Man In the middle
A와 B의 소통을 듣기/변조하는 것을 전체적으로 MITM공격이라고 한다. >ARP Spoofing: 같은 네트워크 상에 있어야한다.
물리 - MAC - IP - Transport - Application
Application계층에서 받아와 Port번호와 함께 패킷 , ip 포함해 패킷, MAC 포함 패킷, 물리 계층은 전기신호로 변환.
외부 통신은 IP가 필요, 와이파이는 내부 망시 데이터+맥주소로 보냄.
A라는 PC가 B 아이피 주소를 뿌려 B 찾는다. - B는 자신임을 알리며 MAC주소 포함해 응답한다. 그럼 통신 가능 상태가 된 것. ARP : IP -> MAC주소 찾는 법 (arp -a 검색으로 자신의 맥주소 확인 가능)
C가 자신이 B인것처럼 속이면 ARP 테이블에 C가 B로 기록됨.
ex) 보통 카페시 와이파이가 게이트웨이, 게이트웨이가 외부와 통신.
공격자가 ARP응답으로 자신이 게이트웨이임을 뿌리면 A가 혼동해 해당 부분이 공격자의 MAC주소로 바뀜, 그럼 공격자가 게이트웨이에 대신 포워딩 해줌, 그럼 중간자 역활을 계속 수행하게 되어 원하는 데이터를 보거나 변조가 가능해진다.
= 옆사람 테이블에 크사도 가능해짐. 응답에 크사 삽입하면 공격가능. DNS spoofing 위조 사이트로 유도
*포트 스캔
Ip 주소 Port 우편함
서버는 우편함을 열어 소통.
Well known Port 80,443
*CV 코드 : 취약점 코드
*함수 후킹: 특정 함수가 실행되기 전, 후에 실행될 코드를 삽입
모바일 앱 해킹 시 함수후킹해야함.
*모바일 앱 종류
- Native App(TCP)
- Hybrid App(TCP+HTTP)
- Web App(HTTP 통신,버프로 똑같이 가능. SQLi , XSS, 등 다 가능)
중앙화된 서버. (90%)
뜯어서 함수 찾고 후킹
))점수조작 1위 가능
*********
러시아 공격! 사이버 공격!
- 통신 장애(DDos)
- ICS 해킹
원자력, 댐 등 // 댐 수위 조절 가능.
일부로 범람 시킴. 예시 ) 스턱스넷 스턱스넷 - 나무위키
-미사일 요격 시스템 해킹
'Web hacking > Nomaltic) 웹 해킹 수업 노트 👩💻' 카테고리의 다른 글
[WEB]SQL injection 모음 (0) | 2022.05.16 |
---|---|
[20주차] 모바일 앱 해킹 공부 가이드 (0) | 2022.03.03 |
[18주차] 모의해킹 직무 면접 준비 (0) | 2022.02.18 |
[18주차]SSI Injection 취약점 (0) | 2022.02.17 |
[17주차] 보고서 리뷰(팁, 예상질문) (0) | 2022.02.10 |