skitter-creek-bath-salts는 실행 중인 시스템의 DRAM 주소 변환을 재배선해 커널에도 보이지 않는 보호 영역을 별칭 주소로 읽고 쓰는 연구 프로젝트임 AMD Family 16h의 DCT bank-swizzle 비트 하나를 바꾸면 물리 주소와 DRAM 좌표의 대응이 달라지며, 상위 계층에서 물리 주소를 기준으로 작동하는 메모리 보호 장벽을 우회할 수 있음 미지의 주소 변환은 sentinel의 원래 주소와 별칭 주소 쌍을 수집한 뒤 GF(2) 선형대수와 z3로 복원해, 임의의 보호 주소에 대응하는 접근 가능한 별칭을 계산함 이 방식으로 PSP·SMRAM·C6 상태 저장 영역·CPU microcode를 추출할 수 있으며, dram_poke를 사용하면 C6 복귀 때 다시 적재되는 microcode 사본도 수정할 수 있음 구현과 검증 대상은 문서화된 DRAM 컨트롤러 레지스터를 잠글 수 없는 AMD Family 16h이며, 17h 이후와 다른 아키텍처에도 같은 메모리 파이프라인 구조가 있지만 이 프로젝트가 직접 입증한 범위는 아님 물리 주소 아래의 DRAM 변환 계층 코드가 *p를 역참조해도 p가 곧바로 DRAM 위치를 뜻하지는 않음 가상 주소는 정규형 검사, 세그먼트 기준 주소, TLB와 페이지 테이블, 권한 검사, 게스트 EPT/NPT를 통과함 이후 메모리 유형, 캐시 일관성, 시스템 인터커넥트와 MMIO 판정을 거쳐 메모리 컨트롤러에 도달함 마지막 MCT/DCT 계층은 물리 주소에 DRAM hole remap, 보호 영역 remap, channel·rank·bank interleave, bank swizzle, chip-select 정규화를 적용해 DIMM의 bank group·bank·row·column 좌표로 변환함 프로젝트는 물리 주소가 원시 DRAM 좌표로 마지막 변환을 거치는 이 최하위 계층을 조작함 DRAM 스파게티화 방식 AMD Family 16h에서 0xf80c2094의 bank-swizzle-mode 비트를 뒤집으면 DCT의 주소 변환이 바뀌어 같은 주소가 실행 도중 다른 DRAM 위치를 가리키게 됨 CPU·펌웨어·칩셋의 보호 장치는 DRAM 좌표가 아니라 물리 주소를 감시하므로, 그 아래에서 좌표 대응을 바꾸면 기존 장벽이 변화를 인식하지 못함 시스템 전체 메모리가 함께 뒤섞이므로 단순히 변환 비트를 바꾸는 것보다 플랫폼을 계속 실행시키는 일이 어려움 다른 프로세서를 중지하고 ...
Related
AnyPS5 - 에뮬레이션 없이 PS5 바이너리를 PC로 포팅하는 도구(시스템 라이브러리 87% 매핑)
50 minutes ago
1
Show GN: 추천링크·UTM으로 오프라인 소개의 성과를 추적하는 구조
1 hour ago
3
소프트웨어 팩토리 패턴 시도하기
1 hour ago
3
Show GN: 웹 변경 모니터링하는 크롬 확장프로그램
2 hours ago
3
OpenAI, 확률·선택지·점수를 반환하는 Decisions API 공개 베타 시작
2 hours ago
3
제프리 카첸버그 - 세상이 바뀌고 있다: 창의성을 위한 AI
3 hours ago
3
이 모든 것이 지나간 뒤를 위한 지속 가능한 웹 커리어
3 hours ago
3
여러 팀의 시스템을 이해하기 위한 AI 집단 지성 구축하기
3 hours ago
3
Tips
click
Popular
프로들도 줄지어 샷 점검… KLPGA 스타 사랑방 된 더헤븐CC 연습장
2 weeks ago
73
iOS 27, iPadOS 27, macOS 27
3 weeks ago
69
손흥민 선제골 발판·골대 불운…LAFC, 7경기 만에 승리
3 weeks ago
65
영림원소프트랩, 나람 통합 ERP 구축…사료 제조·물류·회계 데이터 하나로
2 weeks ago
62
'이 악문' 김영범, 자유형 50m '대회 신기록' 금메달
2 weeks ago
55
© Clint IT 2026. All rights are reserved

1 month ago
29








English (US) ·