웹 애플리케이션은 해킹의 주요 목표입니다. 공격자는 다양한 웹 애플리케이션 취약점을 이용해 데이터베이스나 서버 시스템에 접근합니다.
SQL Injection (SQLi)
→ 사용자의 입력을 제대로 처리하지 않는 웹 애플리케이션을 공격하여 데이터베이스의 데이터를 유출하거나 조작함.
admin' OR '1'='1
같은 악성 코드를 입력해 관리자로 로그인.sqlmap
, Burp Suite
Remote Code Execution (RCE)
→ 웹 애플리케이션을 통해 원격으로 악성 코드를 실행시키는 공격.
Metasploit
, Nikto
Cross-Site Scripting (XSS)
→ 악성 스크립트를 웹 애플리케이션에 삽입하여 다른 사용자의 브라우저에서 실행시키는 공격.
Directory Traversal (LFI/RFI)
→ 웹 애플리케이션의 파일 경로를 조작하여 시스템 파일을 읽거나 실행하는 공격.
../../etc/passwd
와 같은 경로를 통해 시스템 파일을 읽음.네트워크 계층에서의 공격은 시스템 침투를 위한 중요한 경로입니다. 공격자는 다양한 서비스와 포트를 분석하여 취약점을 찾아내고 이를 악용합니다.
Port Scanning (포트 스캔)
→ 열린 포트를 찾아내어 해당 서비스가 취약한지 확인합니다.
nmap
, masscan
Brute Force (무차별 대입 공격)
→ SSH, FTP, RDP, 웹 애플리케이션 로그인 폼에서 패스워드를 추측해 로그인 시도.
Hydra
, Medusa
, ncrack
Man-in-the-Middle (MITM)
→ 사용자와 서버 간의 통신을 가로채서 세션 쿠키나 인증 정보를 탈취.
Ettercap
, mitmproxy
DNS Spoofing/Poisoning
→ DNS 캐시를 조작해 사용자가 악성 웹사이트로 리디렉션되도록 유도.
dnsspoof
, ettercap
ARP Spoofing
→ 네트워크에서 ARP를 조작하여 패킷을 가로채거나 전송함.
arpspoof
, ettercap
데이터베이스는 많은 기업의 핵심 데이터를 보관하는 장소로, 공격자들이 집중하는 주요 목표입니다.
SQL Injection
→ 웹 애플리케이션을 통해 데이터베이스에 직접 접근하여 데이터를 유출하거나 조작하는 방법입니다.
SELECT * FROM users WHERE username='admin' AND password='password'
를 조작하여 관리자로 로그인.Authentication Bypass (인증 우회)
→ 비밀번호가 없거나 취약한 인증 방식을 우회하여 DB에 접근.
DB Dump (데이터베이스 덤프)
→ 데이터베이스의 전체 덤프를 만들어 시스템에 있는 중요한 데이터를 유출.
mysqldump
, MongoDump
Privilege Escalation (권한 상승)
→ DB 내부의 권한이 낮은 계정에서 높은 권한을 획득하여 민감한 정보에 접근.
root
계정으로 상승.시스템 자체를 공격하는 것은 일반적으로 모든 공격의 최종 목표입니다. 침투가 이루어지면 루트 권한을 얻고 내부 시스템에 백도어를 심어 놓는 등 여러 악성 행위가 가능합니다.
Buffer Overflow (버퍼 오버플로우)
→ 취약한 프로그램의 버퍼 크기를 초과하는 데이터를 입력하여 프로그램의 흐름을 변경.
gdb
, Pwntools
Privilege Escalation (권한 상승)
→ 시스템에 낮은 권한으로 들어간 후 root 권한을 얻는 공격.
LinPEAS
, Linux Exploit Suggester
Exploit (취약점 악용)
→ 취약한 소프트웨어나 운영 체제의 버그를 이용해 시스템에 침투.
Metasploit
, searchsploit
, exploit-db
해킹 공격의 많은 부분은 사람을 대상으로 한 공격입니다. 실제로는 시스템 보안보다 사람의 실수나 부주의를 통해 침투하는 경우가 많습니다.
Phishing (피싱)
→ 이메일, 메시지 등을 통해 가짜 사이트로 유도하여 로그인 정보나 개인정보를 탈취.
Evilginx2
, SET (Social-Engineer Toolkit)
Vishing (전화 피싱)
→ 전화나 음성 메시지를 통해 사용자로부터 개인정보를 얻어내는 방법.
Pretexting (위장)
→ 가짜 신분으로 접근하여 정보를 유출받는 방법.
Baiting (미끼 공격)
→ 사용자가 악성 USB나 파일을 실행하도록 유도하여 악성 코드를 설치.
해킹은 컴퓨터를 공격하는 것이 아니라 "길을 찾는 것" 같아. 웹사이트나 이메일에서 비밀번호나 특별한 문서를 찾고, 창문을 열어서 들어가는 거야. 때로는 그냥 사람들한테 말을 걸어 그 정보를 얻기도 해!