"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."
👨💻 안녕하세요, 윌리 프로젝트의 윌리 입니다.
윈도우의 NTFS 대체 데이터 스트림(Alternate Data Streams, ADS) 이란 무엇인지 간략히 알아보았습니다.

질문 >
윈도우의 NTFS 대체 데이터 스트림(Alternate Data Streams, ADS) 이란 무엇인가요?
답변 >
NTFS 대체 데이터 스트림(Alternate Data Streams, ADS) 는
Windows NTFS 파일 시스템에서 하나의 파일에 여러 개의 데이터 스트림을 저장할 수 있게 해주는 숨겨진 저장 구조입니다.
쉽게 말해:
- 하나의 파일 안에 ‘보이지 않는 파일’을 여러 개 붙여 넣을 수 있는 기능
이라고 보면 됩니다.
⭐ NTFS ADS 개념
1) 하나의 파일 이름 뒤에
파일이름:스트림이름
형식으로 여러 개의 스트림을 붙일 수 있습니다.
예:
test.txt:secret
여기서 test.txt 는 일반 파일,
secret 은 그 안에 숨겨진 ADS 이름입니다.
2) 파일 탐색기나 일반 명령어로는 보이지 않음
보통 탐색기에서 파일 크기를 보면 0KB로 봐도 실제로 ADS 안에는 데이터가 있을 수 있습니다.
⭐ ADS는 왜 존재하는 기능인가?
원래 목적은 Macintosh HFS 파일 호환입니다.
Mac OS HFS 구조는 파일에 데이터 포크(Data Fork) 와 리소스 포크(Resource Fork) 의 2가지 스트림을 가지고 있었고, NTFS는 이를 호환하기 위해 ADS 기능을 도입했습니다.
⭐ ADS 사용 예시
📌 ADS 생성
echo Hello > normal.txt
echo Secret message > normal.txt:hidden
📌 ADS 확인
Windows에서는 dir /r 로 볼 수 있습니다.
dir /r normal.txt
출력 예:
normal.txt
20 normal.txt:hidden:$DATA
📌 ADS 읽기
more < normal.txt:hidden
📌 ADS 삭제
스트림명까지 포함해서 지우면 됩니다:
del normal.txt:hidden
⭐ ADS가 문제가 되는 경우 (보안 관점)
ADS는 탐색기에서 보이지 않고, 기본 파일 정보에 포함되지 않기 때문에
과거 악성코드가 파일에 숨어드는 방식으로 많이 사용되었습니다.
예시:
notepad.exe:evil.exe
기본 파일 크기는 0KB지만 ADS에 악성 코드가 들어 있을 수 있습니다.
또한 인터넷에서 받은 파일이 “차단됨(Unblock required)” 표시되는 이유도
다운로드한 파일에 Zone.Identifier 라는 ADS가 붙기 때문입니다.
예:
download.exe:Zone.Identifier
이 안에 “인터넷에서 내려받았음” 정보가 들어 있습니다.
⭐ 요약
| 특징 | 설명 |
| 목적 | Mac HFS 호환, 메타데이터 저장 |
| 사용성 | 파일에 여러 데이터 스트림 저장 가능 |
| 보안 | 숨겨진 스트림으로 악성코드 은닉 가능 |
| 확인 방법 | dir /r |
🎬 유튜브 채널 🎬
위로그@WiLog
📢 안녕하세요, 위로그@WiLog 시청자 여러분, 저는 윌리(Willee) 입니다. 📢 위로그@WiLog 는 자기계발을 목적으로 하는 채널 입니다. 📢 오늘도 즐겁게~ 자신을 위한 계발을 함께 해보아요~ d^_^b 📌
www.youtube.com
🎬 치지직 채널 🎬
위로그 채널 - CHZZK
지금, 스트리밍이 시작됩니다. 치지직-
chzzk.naver.com
'컴퓨터' 카테고리의 다른 글
| 👨💻 [AI] Claude 의 아티팩트는 어떤 기능이고, 어떻게 활용할 수 있나요? (0) | 2026.01.06 |
|---|---|
| 👨💻 [AI] Claude 의 프로젝트는 어떤 역할을 하나요? (0) | 2026.01.06 |
| 👨💻 [AWS] AWS의 로드밸런서 NLB 의 활성 플로우 수 는 무엇을 의미하나요? (0) | 2025.11.17 |
| 👨💻 [Groovy] JMeter에서 사용하는 언어인 Groovy 는 무엇인가요? (0) | 2025.10.20 |
| 👨💻 [IT] MVP와 프로토타입/PoC(Proof of Concept)의 차이점은 어떻게 되나요? (0) | 2025.10.02 |