🔐
Security Update List
  • Security Update List
  • Security-Update-Infomations
    • [2023] Security Update Infomations
      • 지니언스 NAC 제품 보안 업데이트 권고[2023-08/1]
      • Oracle 제품 보안 업데이트 권고[2023-08/1]
      • Apache 제품 보안 업데이트 권고[2023-08/1]
      • Zimbra 제품 보안 업데이트 권고[2023-08/1]
      • OpenSSH 제품 보안 업데이트 권고[2023-07/1]
      • Citrix 제품 보안 업데이트 권고[2023-07/2]
      • Adobe 제품 보안 업데이트 권고[2023-07/2]
      • Adobe 제품 보안 업데이트 권고[2023-07/1]
      • Fortinet 제품 보안 업데이트 권고[2023-07/1]
      • Citrix 제품 보안 업데이트 권고[2023-07/1]
      • Apple 제품 보안 업데이트 권고[2023-07/1]
      • Progress 제품 보안 업데이트 권고[2023-07/1]
      • Cisco 제품 보안 업데이트 권고[2023-07/1]
      • Arcserve 제품 보안 업데이트 권고[2023-07/1]
      • Cisco 제품 보안 업데이트 권고[2023-06/1]
      • VMware 제품 보안 업데이트 권고[2023-06/1]
      • Progress 제품 보안 업데이트 권고[2023-06/1]
      • ASUS 제품 보안 업데이트 권고[2023-06/1]
      • ZYXEL 제품 보안 업데이트 권고[2023-06/1]
      • Fortinet 제품 취약점 보안 업데이트 권고[2023-06/1]
      • Progress 제품 보안 업데이트 권고[2023-06/1]
      • 구글 Chrome 브라우저 보안 업데이트 권고[2023-06/1]
      • Cisco 제품 보안 업데이트 권고[2023-06/1]
      • Barracuda 제품 보안 업데이트 권고[2023-05/1]
      • Cisco 제품 보안 업데이트 권고[2023-05/1]
      • WordPress 제품 보안 업데이트 권고[2023-05/1]
      • 나모 웹에디터 제품군 보안패치 적용 및 웹페이지 파일 업로드 보안 강화 권고[2023-05/1]
      • 리눅스 권한 상승 취약점 보안 업데이트 권고[2023-05/1]
      • Hikvision 제품 보안 업데이트 권고[2023-05/1]
      • Cisco 제품 보안 업데이트 권고[2023-04/2]
      • Oracle 제품 보안 업데이트 권고[2023-04/2]
      • 구글 Chrome 브라우저 보안 업데이트 권고[2023-04/2]
      • Mozilla 제품 보안 업데이트 권고[2023-04/1]
      • 구글 Chrome 브라우저 보안 업데이트 권고[2023-04/1]
      • Apple 제품 보안 업데이트 권고[2023-04/1]
      • QNAP NAS 제품 보안 업데이트 권고[2023-04/1]
      • Cisco 제품 보안 업데이트 권고[2023-04/3]
      • Cisco 제품 보안 업데이트 권고[2023-04/2]
      • Cisco 제품 보안 업데이트 권고[2023-04/1]
      • 이니텍 INISAFE CrossWeb EX V3 보안 업데이트 권고[2023-03/1]
      • WordPress 제품 보안 업데이트 권고[2023-03/1]
      • 드림시큐리티 MagcLine 취약점 보안 업데이트 권고[2023-03/1]
      • Adobe 제품 보안 업데이트 권고2023-03-17[2023-03/1]
      • MS Office Outlook 보안 취약점 주의 권고[2023-03/1]
      • Fortinet 제품 취약점 보안 업데이트 권고[2023-03/1]
      • 금융 보안 솔루션 업데이트 권고[2023-03/1]
      • GitLab 제품 보안 업데이트 권고[2023-03/1]
      • Cisco 제품 보안 업데이트 권고[2023-03/1]
      • Apache Commons FileUpload 보안 업데이트 권고[2023-02/1]
      • Cisco 제품 보안 업데이트 권고[2023-02/1]
      • Fortinet 제품 보안 업데이트 권고[2023-02/1]
      • Safari 16.3.1의 보안 콘텐츠에 관하여[2023-02/1]
      • 최근 해킹 공격에 활용되는 취약점 보안 업데이트 권고[2023-02/1]
      • 사이버위협 장기화에 따른 기업해킹 예방을 위한 보안점검 권고[2023-02/1]
      • OpenSSL 취약점 보안 업데이트 권고[2023-02/1]
      • 랜섬웨어를 유포하는 VMware ESXi 취약점 주의 권고[2023-02/1]
      • Cisco 제품 보안 업데이트 권고[2023-02/2]
      • VMware 제품 보안 업데이트 권고[2023-02/2]
      • OpenSSH Client 보안 업데이트 권고[2023-02/1]
      • Cisco 제품 보안 업데이트 권고[2023-02/1]
      • VMware 제품 보안 업데이트 권고[2023-02/1]
      • 금융 보안 솔루션 업데이트 권고[2023-02/1]
      • QNAP NAS 제품 보안 업데이트 권고[2023-01/1]
      • BIND DNS 취약점 보안 업데이트 권고[2023-01/1]
      • About the security content of tvOS 16.3[2023-01/1]
      • 구글 Chrome 브라우저 보안 업데이트 권고[2023-01/1]
      • Drupal 제품 보안 업데이트 권고[2023-01/2]
      • Juniper 제품 보안 업데이트 권고[2023-01/1]
      • 국내 홈페이지 변조 관련 민간부문 보안 강화 권고 안내[2023-01/1]
      • Mozilla 제품 보안 업데이트 권고[2023-01/3]
      • Cisco 제품 보안 업데이트 권고[2023-01/3]
      • GitLab 제품 보안 업데이트 권고[2023-01/1]
      • Sophos 제품 보안 업데이트 권고[2023-01/1]
      • Cisco 제품 보안 업데이트 권고[2023-01/2]
      • Cacti 제품 보안 업데이트 권고[2023-01/1]
      • WordPress 플러그인 보안 업데이트 권고[2023-01/1]
      • Drupal 제품 보안 업데이트 권고[2023-01/1]
      • Juniper 제품 보안 업데이트 권고[2023-01/1]
      • Zoom 제품 보안 업데이트 권고[2023-01/1]
      • Adobe 제품 보안 업데이트 권고[2023-01/1]
      • ZK Framework 보안 업데이트 권고[2023-01/1]
      • Cisco 제품 보안 업데이트 권고[2023-01/1]
      • Zoho 제품 보안 업데이트 권고[2023-01/1]
      • Fortinet 제품 보안 업데이트 권고[2023-01/1]
    • [2022] Security Update Infomations
      • TP-Link 제품 보안 업데이트 권고[2022-12/1]
      • Apple 제품 보안 업데이트 권고[2022-12/2]
      • Samba 취약점 보안 업데이트 권고[2022-12/1]
      • [KISA] 기존 유출된 계정정보를 이용한 해킹 위협 증가에 따른 사용자 계정 보안 강화 권고[2022-12/1]
      • Mozilla 제품 보안 업데이트 권고[2022-12/1]
      • VMware 제품 보안 업데이트 권고[2022-12/1]
      • Apple 제품 보안 업데이트 권고[2022-12/1]
      • Citrix 제품 보안 업데이트 권고[2022-12/1]
      • Cisco 제품 보안 업데이트 권고[2022-12/1]
      • Fortinet 제품 취약점 보안 업데이트 권고[2022-12/1]
      • [AWS] Reported ECR Public Gallery Issue[2022-12/1]
      • VMware 제품 보안 업데이트 권고[2022-12/1]
      • Cisco 제품 보안 업데이트 권고[2022-12/1]
      • FreeBSD ping 보안 업데이트 권고[2022-12/1]
      • 넷기어 제품 보안 업데이트 권고[2022-12/1]
      • 안드로이드OS 보안 업데이트 권고[2022-12/1]
      • Grafana 제품 보안 업데이트 권고[2022-12/1]
      • [AWS] Reported AWS AppSync Issue[2022-11/1]
      • macOS Ventura 13.0.1의 보안 콘텐츠에 관하여[2022-11/1]
      • Xcode 14.1의 보안 콘텐츠에 관하여[2022-11/1]
      • Cisco 제품 보안 업데이트 권고[2022-11/5]
      • Atlassian 제품 취약점 보안 업데이트 권고[2022-11/1]
      • Cisco 제품 보안 업데이트 권고[2022-11/4]
      • F5 제품 보안 업데이트 권고[2022-11/1]
      • Cisco 제품 보안 업데이트 권고[2022-11/3]
      • Samba 취약점 보안 업데이트 권고[2022-11/1]
      • Mozilla 제품 보안 업데이트 권고[2022-11/1]
      • Lenovo 노트북 BIOS 보안 업데이트 권고[2022-1]
      • Cisco 제품 보안 업데이트 권고[2022-11/2]
      • 안드로이드OS 보안 업데이트 권고[2022-11/1]
      • 구글 Chrome 브라우저 보안 업데이트 권고[2022-11/1]
      • Apple 제품 보안 업데이트 권고[2022-11/2]
      • Citrix 제품 보안 업데이트 권고[2022-11/1]
      • VMware 제품 보안 업데이트 권고[2022-11/1]
      • Cisco 제품 보안 업데이트 권고[2022-11/1]
      • Apple 제품 보안 업데이트 권고[2022-11/1]
      • OpenSSL 취약점 보안 업데이트 권고[2022-11/1]
      • Reported AWS Desktop VPN Client(Windows) Issue[2022-04/2]
      • Reported Amazon RDS PostgreSQL Issue[2022-04/1]
      • Reported AWS Glue Issue[2022-01/2]
      • Reported AWS CloudFormation Issue[2022-01/1]
  • MAC/Android Security Update List
    • [2023] MAC/Android Security Update List
      • Android 보안 권고[2023-04]
      • Android Automotive OS 업데이트[2023-04]
      • macOS Big Sur 11.7.5의 보안 콘텐츠에 관하여[2023-03/1]
      • About the security content of macOS Monterey 12.6.4[2023-03/1]
      • About the security content of macOS Ventura 13.3[2023-03/1]
      • macOS용 GarageBand 10.4.8의 보안 콘텐츠에 관하여[2023-03/1]
      • About the security content of watchOS 9.3.1[2023-02/1]
      • macOS Ventura 13.2.1의 보안 콘텐츠에 관하여[2023-02/1]
      • About the security content of tvOS 16.3.2[2023-02/1]
      • iOS 16.3.1 및 iPadOS 16.3.1의 보안 콘텐츠에 관하여[2023-02/1]
      • About the security content of Safari 16.3[2023-01/1]
      • About the security content of iOS 12.5.7[2023-01/1]
      • About the security content of macOS Monterey 12.6.3[2023-01/1]
      • About the security content of macOS Big Sur 11.7.3[2023-01/1]
      • About the security content of watchOS 9.3[2023-01/1]
      • About the security content of iOS 15.7.3 and iPadOS 15.7.3[2023-01/1]
      • About the security content of iOS 16.3 and iPadOS 16.3[2023-01/1]
      • About the security content of macOS Ventura 13.2[2023-01/1]
      • Pixel 보안 권고[2023-03]
      • Android Automotive OS 보안 권고[2023-03]
      • Android 보안 권고[2023-03]
      • Android 보안 권고[2023-02]
      • Pixel 보안 권고[2023-02]
      • Android Automotive OS 보안 권고[2023-02]
      • Android 보안 권고[2023-01]
      • Pixel 보안 권고[2023-01]
      • Android Automotive OS 보안 권고[2023-01]
  • SW/HW Update List
    • [2023] SW/HW Update List
      • MS 8월 보안 위협에 따른 정기 보안 업데이트 권고[2023-08]
      • Ubuntu 제품 보안 업데이트 권고[2023-08]
      • MS 7월 보안 위협에 따른 정기 보안 업데이트 권고[2023-07]
      • 리눅스 커널(Linux Kernel) 권한 상승 취약점 보안 업데이트 권고 [2023-07]
      • MS 6월 보안 위협에 따른 정기 보안 업데이트 권고 [2023-06]
      • 신고된 GuardDuty 결과 문제[2023-05]
      • MS 5월 보안 위협에 따른 정기 보안 업데이트 권고[2023-05]
      • [AWS Amazon] 여러 MFA 디바이스를 지원하는 IAM 관련 문제[2023-04]
      • 국내외 사이버 위협 고조에 따른 국내 기업 대상 사이버 공격 대비 보안 강화 권고[2023-04]
      • MS 4월 보안 위협에 따른 정기 보안 업데이트 권고[2023-04]
      • MS 3월 보안 위협에 따른 정기 보안 업데이트 권고[2023-03]
      • SQL Server 취약성 평가
      • NGINX 보안 권고
      • OpenSSL Vulnerabilities
      • MS 2월 보안 위협에 따른 정기 보안 업데이트 권고[2023-02]
      • IBM 제품 업데이트 권고[2023-02]
      • AMD 제품 보안 업데이트 권고[2023-01]
      • Oracle 제품 보안 업데이트 권고[2023-01]
      • MS Exchage Server 2013 기술 지원 종료 대비 보안 권고[2023-01]
      • MS 1월 보안 위협에 따른 정기 보안 업데이트 권고[2023-01]
      • MS 윈도우 8.1 기술지원 종료 관련 보안 권고[2023-01]
    • [2022] SW/HW Update List
      • MS 12월 보안 위협에 따른 정기 보안 업데이트 권고[2023-02]
      • 구글 Chrome 브라우저 보안 업데이트 권고[2022-12/2]
      • 구글 Chrome 브라우저 보안 업데이트 권고[2022-12/1]
      • 구글 Chrome 브라우저 보안 업데이트 권고[2022-11]
      • MS 11월 보안 위협에 따른 정기 보안 업데이트 권고[2022-11]
  • Vulnerability-Inofmations
    • [2023] Vulnerability-Inofmations
      • CVE-2021-26644 | Mangboard 게시판 SQL-Injection 취약점[2023-01/1]
      • CVE-2021-26642 | XpressEngine 게시판 파일 업로드 취약점[2023-01/1]
    • [2022] Vulnerability-Inofmations
      • CVE-2022-41158 | 이윰빌더 원격 코드 실행 취약점[2022-11/1]
      • CVE-2022-41157 | 경리나라 원격 코드 실행 취약점[2022-11/1]
      • CVE-2022-41156 | 온디스크 플레이어 원격코드실행 취약점[2022-11/1]
      • CVE-2022-23771 | IPTIME NAS1DUAL CSRF 취약점[2022-10/1]
      • CVE-2022-23769 | 시큐에버 reverseWall-MDS 원격 코드 실행 취약점[2022-10/1]
      • CVE-2022-23770 | WISA Smart Wing CMS 원격 명령 실행 취약점[2022-10/1]
      • CVE-2022-23768 | 네오정보시스템 NIS-HAP11AC 원격 접속 및 조작 취약점[2022-09/1]
      • CVE-2022-23767 | SecureGate 인증 우회 취약점[2022-09/1]
      • CVE-2022-23766 | BigFileAgent 임의 파일 실행 취약점[2022-09/1]
      • CVE-2022-23768 | 네오정보시스템 NIS-HAP11AC 원격 접속 및 조작 취약점[2022-09/1]
      • CVE-2022-23767 | SecureGate 인증 우회 취약점[2022-09/1]
      • CVE-2022-23766 | BigFileAgent 임의 파일 실행 취약점[2022-09/1]
      • CVE-2022-23765 | IPTIME NAS 제품군 CSRF 취약점[2022-08/1]
      • CVE-2022-23764 | 테르텐 웹큐브 업데이트 원격 코드 실행 취약점
      • CVE-2021-26639 | WISA Smart Wing CMS 파일 다운로드 취약점[2022-08/1]
  • Security-Monthly(Out-Link)
    • [KISA] Security Report
      • Security Analyze Note
        • [2023] TTPs #10 : Operation GoldGoblin - 제로데이 취약점을 이용, 선별적으로 침투하는 공격전략 분석
        • [2023] 블랙캣 랜섬웨어 침해사고 기술보고서
        • [2023] 샤오치잉(晓骑营) 공격 그룹 침해사고 및 대응방안 보고서
        • [2023] TTPs$ ScarCruft Tracking Note [Ver. KOR]
        • [2022] TTPs#9 개인의 일상을 감시하는 공격전략 분석
        • [2022] TTPs#8 Operation GWISIN - 맞춤형 랜섬웨어 공격 전략 분석 [Ver.KOR]
        • [2022] TTPs#7 SMB Admin Share를 활용한 내부망 이동 전략분석
        • [2021] TTPs#6 타겟형 워터링홀 공격전략 분석
        • [2021] TTPs#5 AD 환경을 위협하는 공격 패턴 분석
        • [2020] TTPs#4 피싱타깃 정찰과 공격 자원 분석
        • [2020] TTPs#3 공격자의 악성코드 활용 전략 분석
        • [2020] TTPs#2 스피어 피싱으로 정보를 수집하는 공격망 구성 방식 분석
        • [2020] TTPs#1 홈페이지를 통한 내부망 장악 사례 분석
      • [KISA] 2023 Security Report
        • 2023 국가정보보호백서(국문)
        • [KISA Insight 2023 Vol.03] ChatGPT(챗GPT) 보안 위협과 시사점
        • 2022년 하반기 사이버 위협 동향 보고서
        • 2023 사이버 보안 위협 전망(hwpx)
        • 2023 사이버 보안 위협 전망(pdf)
    • [SK쉴더스] 보안 분석/가이드/리포트/트렌드/동향 보고서
      • [SK쉴더스] 월간 보고서
        • [SK쉴더스]EQST insight 2023년 2월호
        • [SK쉴더스]EQST insight 2023년 1월호
      • [Sk쉴더스]EQST Annual Report 2023 보안 위협 전망 보고서
      • [Sk쉴더스][보안 가이드] KARA 랜섬웨어 동향 보고서
      • [Sk쉴더스][보안 가이드] '귀신(Gwisin)' 랜섬웨어 공격 전략 분석 리포트
      • [Sk쉴더스][발표 자료] RSA Conference 2022 Insight 및 보안 트렌드
      • [Sk쉴더스][발표 자료] 2022 KARA 랜섬웨어 대응 보고서
      • [Sk쉴더스][보안 가이드] 개인정보보호 가이드 2022
      • [Sk쉴더스][보안 가이드] EQST Annual Report 2022 보안 위협 전망
      • [Sk쉴더스][보안 가이드] EQST그룹이 제안하는 IoT 진단 가이드
      • [Sk쉴더스][보안 가이드] EQST그룹이 제안하는 클라우드 모의해킹 방법론
      • [Sk쉴더스][보안 가이드] 2021 클라우드 보안 가이드 - GCP
      • [Sk쉴더스][보안 가이드] 2021 클라우드 보안 가이드 - Azure
      • [Sk쉴더스][보안 가이드] 2021 클라우드 보안 가이드 - AWS
      • [Sk쉴더스][보안 가이드] 2021 IT정보보호 구축 가이드
    • [AHNLAB] 시큐리티 레터 및 월간 매거진/ASEC Report
      • ‘2023년 5대 사이버 보안위협 전망’ 발표
      • Ahnlab-Monthy-NewsLetter
      • Ahnlab-Monthy-Magazine
      • ASEC REPORT[분기별]
        • ASEC REPORT_108[2022-03]
        • ASEC REPORT_107[2022-02]
        • ASEC REPORT_106[2022-01]
        • ASEC REPORT_105[2021-04]
        • ASEC REPORT_104[2021-03]
        • ASEC REPORT_103[2021-02]
        • ASEC REPORT_102[2021-01]
        • ASEC REPORT_101[2020-04]
        • ASEC REPORT_100[2020-03]
        • ASEC REPORT_99[2020-02]
        • ASEC REPORT_98[2020-01]
        • ASEC REPORT_97[2019-04]
        • ASEC REPORT_96[2019-03]
        • ASEC REPORT_95[2019-02]
        • ASEC REPORT_94[2019-01]
        • ASEC REPORT_93[2018-04]
        • ASEC REPORT_92[2018-03]
        • ASEC REPORT_91[2018-02]
        • ASEC REPORT_90[2018-01]
        • ASEC REPORT_89[2017-04]
        • ASEC REPORT_88[2017-03]
        • ASEC REPORT_87[2017-02]
        • ASEC REPORT_86[2017-01]
        • ASEC REPORT[2016]
        • ASEC REPORT[2015]
        • ASEC REPORT[2014]
        • ASEC REPORT[2013]
        • ASEC REPORT[2012]
        • ASEC REPORT[2011]
        • ASEC REPORT[2010]
        • ASEC REPORT[2009]
        • ASEC REPORT[2008]
        • ASEC REPORT[2007]
        • ASEC REPORT[2006]
        • ASEC REPORT[2005]
        • ASEC REPORT[2004]
        • ASEC REPORT[2003]
    • [ESTSECURITY] 월간 보안 보고서
      • [2022년도] 월간 보고서
        • estsecurity_Security_Monthly(12)
        • estsecurity_Security_Monthly(2022-11)
        • estsecurity_Security_Monthly(2022-10)
        • estsecurity_Security_Monthly(2022-09)
        • estsecurity_Security_Monthly(2022-08)
        • estsecurity_Security_Monthly(2022-07)
        • estsecurity_Security_Monthly(2022-06)
        • estsecurity_Security_Monthly(2022-05)
        • estsecurity_Security_Monthly(2022-04)
        • estsecurity_Security_Monthly(2022-03)
        • Estsecurity_Security_Monthly(2022-02)
        • estsecurity_Security_Monthly(2022-01)
      • 2023.06 이스트시큐리티 월간 보고서
      • 2023.05 이스트시큐리티 월간 보고서
      • 2023.04 이스트시큐리티 월간 보고서
      • 2023.03 이스트시큐리티 월간 보고서
      • 2023.02 이스트시큐리티 월간 보고서
      • 2023.01 이스트시큐리티 월간 보고서
    • [Piolink] 보안 보고서
      • [Piolink] 웹 침투 시나리오로 살펴보는 웹 취약점(1/2)
      • [Piolink] 웹 침투 시나리오로 살펴보는 웹 취약점(2/2)
      • [2023년] 월간 보안 보고서
        • 2023-06 월간 보안 동향 리포트
        • 2023-05 월간 보안 동향 리포트
        • 2023-04 월간 보안 동향 리포트
        • 2023-03 월간 보안 동향 리포트
        • 2023-02 월간 보안 동향 리포트
        • 2023-01 월간 보안 동향 리포트
      • [2022년] 월간 보안 보고서
        • Piolink_Security_Monthly(2022-12)
        • Piolink_Security_Monthly(2022-11)
        • Piolink_Security_Monthly(2022-10)
        • Piolink_Security_Monthly(2022-09)
        • Piolink_Security_Monthly(2022-08)
        • Piolink_Security_Monthly(2022-07)
        • Piolink_Security_Monthly(2022-06)
        • Piolink_Security_Monthly(2022-05)
        • Piolink_Security_Monthly(2022-04)
        • Piolink_Security_Monthly(2022-03)
        • Piolink_Security_Monthly(2022-02)
        • Piolink_Security_Monthly(2022-01)
    • [개인정보보호 포털] 동향 보고서 및 정책 자료
      • 2023 개인정보 7대 이슈
      • 개인정보보호 판례집
      • 개인정보 보호법 표준 해석례(2022.12)
      • 개인정보 보호 가이드라인(인사·노무편)(2023.1. 개정)
      • 2022 개인정보 주요 이슈 법령해석 사례 30선(2022.12)
      • [2023] 개인정보보호 동향 보고서
        • 2023 개인정보보호 동향 보고서 VOL1(1월호)
      • [2022] 개인정보보호 동향 보고서
        • 2022 개인정보보호 동향 보고서 VOL12(12월호)
        • 2022 개인정보보호 동향 보고서 VOL11(11월호)
        • 2022 개인정보보호 동향 보고서 VOL10(10월호)
        • 2022 개인정보보호 동향 보고서 VOL9(9월호)
        • 2022 개인정보보호 동향 보고서 VOL8(8월호)
        • 2022 개인정보보호 동향 보고서 VOL7(7월호)
        • 2022 개인정보보호 동향 보고서 VOL6(6월호)
        • 2022 개인정보보호 동향 보고서 VOL5(5월호)
        • 2022 개인정보보호 동향 보고서 VOL4(4월호)
        • 2022 개인정보보호 동향 보고서 VOL3(3월호)
        • 2022 개인정보보호 동향 보고서 VOL2(2월호)
        • 2022 개인정보보호 동향 보고서 VOL1(1월호)
      • [2021] 개인정보보호 동향 보고서
        • 2022 개인정보 7대 이슈
        • 2021 개인정보보호 동향 보고서 VOL12(12월호)
        • 2021 개인정보보호 동향 보고서 VOL11(11월호)
        • 2021 개인정보보호 동향 보고서 VOL10(10월호)
        • 2021 개인정보보호 동향 보고서 VOL9(9월호)
        • 2021 개인정보보호 동향 보고서 VOL8(8월호)
        • 2021 개인정보보호 동향 보고서 VOL7(7월호)
        • 2021 개인정보보호 동향 보고서 VOL6(6월호)
        • 2021 개인정보보호 동향 보고서 VOL5(5월호)
        • 2021 개인정보보호 동향 보고서 VOL4(4월호)
        • 2021 개인정보보호 동향 보고서 VOL3(3월호)
        • 2021 개인정보보호 동향 보고서 VOL2(2월호)
        • 2021 개인정보보호 동향 보고서 VOL1(1월호)
      • [2016이후] 개인정보보호 연차 보고서
        • 2021 개인정보보호 연차보고서
        • 2020 개인정보보호 연차보고서
        • 2019 개인정보보호 연차보고서
        • 2018 개인정보보호 연차보고서
        • 2017 개인정보보호 연차보고서
        • 2016 개인정보보호 연차보고서
    • [금융보안원] 분기 보고서
      • [금융보안원2022-4Q] 전자금융과 금융보안 제30호
      • [금융보안원2022-3Q] 전자금융과 금융보안 제29호
      • [금융보안원2022-2Q] 전자금융과 금융보안 제28호
      • [금융보안원2022-1Q] 전자금융과 금융보안 제27호
    • [과학기술정보통신부] 과학기술&ICT동향
      • [과학기술정보통신부(2023-07)] 제242호 과학기술&ICT동향
      • [과학기술정보통신부(2023-06)] 제241호 과학기술&ICT동향
      • [과학기술정보통신부(2023-06)] 제240호 과학기술&ICT동향
      • [과학기술정보통신부(2023-06)] 제239호 과학기술&ICT동향
      • [과학기술정보통신부(2023-05)] 제238호 과학기술&ICT동향
      • [과학기술정보통신부(2023-05)] 제237호 과학기술&ICT동향
      • [과학기술정보통신부(2023-04)] 제236호 과학기술&ICT동향
      • [과학기술정보통신부(2023-04)] 제235호 과학기술&ICT동향
      • [과학기술정보통신부(2023-04)] 제234호 과학기술&ICT동향
      • [과학기술정보통신부(2023-03)] 제233호 과학기술&ICT동향
      • [과학기술정보통신부(2023-02)] 제232호 과학기술&ICT동향
      • [과학기술정보통신부(2023-02)] 제231호 과학기술&ICT동향
      • [과학기술정보통신부(2023-01)] 제230호 과학기술&ICT동향
      • [과학기술정보통신부(2023-01)] 제229호 과학기술&ICT동향
      • [과학기술정보통신부(2022-12)] 제228호 과학기술&ICT동향
      • [과학기술정보통신부(2022-11)] 제227호 과학기술&ICT동향
      • [과학기술정보통신부(2022-11)] 제226호 과학기술&ICT동향
      • [과학기술정보통신부(2022-10)] 제225호 과학기술&ICT동향
      • [과학기술정보통신부(2022-10)] 제224호 과학기술&ICT동향
      • [과학기술정보통신부(2022-09)] 제223호 과학기술&ICT동향
      • [과학기술정보통신부(2022-09)] 제222호 과학기술&ICT동향
      • [과학기술정보통신부(2022-09)] 제221호 과학기술&ICT동향
      • [과학기술정보통신부(2022-08)] 제220호 과학기술&ICT동향
      • [과학기술정보통신부(2022-07)] 제219호 과학기술&ICT동향
      • [과학기술정보통신부(2022-07)] 제218호 과학기술&ICT동향
      • [과학기술정보통신부(2022-07)] 제217호 과학기술&ICT동향
      • [과학기술정보통신부(2022-06)] 제216호 과학기술&ICT동향
      • [과학기술정보통신부(2022-06)] 제215호 과학기술&ICT동향
      • [과학기술정보통신부(2022-05)] 제214호 과학기술&ICT동향
      • [과학기술정보통신부(2022-04)] 제213호 과학기술&ICT동향
      • [과학기술정보통신부(2022-04)] 제212호 과학기술&ICT동향
      • [과학기술정보통신부(2022-04)] 제211호 과학기술&ICT동향
      • [과학기술정보통신부(2022-03)] 제210호 과학기술&ICT동향
      • [과학기술정보통신부(2022-03)] 제209호 과학기술&ICT동향
      • [과학기술정보통신부(2022-02)] 제208호 과학기술&ICT동향
      • [과학기술정보통신부(2022-01)] 제207호 과학기술&ICT동향
      • [과학기술정보통신부(2022-01)] 제206호 과학기술&ICT동향
    • [한국정보통신기술협회] TTA_Journal
      • [한국정보통신기술협회(2022-09)] 제 203호 TTA_Journal
      • [한국정보통신기술협회(2022-07)] 제 202호 TTA_Journal
      • [한국정보통신기술협회(2022-05)] 제 201호 TTA_Journal
      • [한국정보통신기술협회(2022-03)] 제 200호 TTA_Journal
      • [한국정보통신기술협회(2022-01)] 제 199호 TTA_Journal
    • [한국정보통신기술협회] 정보통신단체표준(TTAS)
      • 2022년 이전 자료
        • 2015~2021 ICT 표준기술자문 우수사례 모음집
        • 2021년 ICT 표준기술 우수자문 사례집
        • ICT 국제표준화 노하우 가이던스 [실전편II] 글로벌 표준화 실전 만나기
        • ICT 국제표준화 노하우 가이던스 [실전편I] 글로벌 표준화 문화 만나기
        • 2021년 알기쉬운 ICT 표준해설서
        • ISO/IEC JTC 1 정보통신분야 표준분류도(국영문)
        • 2020년 ICT국제표준 마에스트로 주요이슈 분석서 [3GPP 5G and beyond와 철도이동통신 표준화]
        • 2020년 ICT국제표준 마에스트로 주요이슈 분석서 [ISO, IEC 지능형 로봇 표준화]
        • 2020년 ICT국제표준 마에스트로 주요이슈 분석서 [ITU-T 정보보호 표준화]
        • 2020년 ICT국제표준 마에스트로 주요이슈 분석서 [IEEE 802.11 네트워크 표준화]
        • 2020년 ICT국제표준 마에스트로 주요이슈 분석서 [IEEE 802.15 네트워크 표준화]
        • 2020년 ICT국제표준 마에스트로 주요이슈 분석서 [양자키분배 네트워크 표준화]
        • 2020년 ICT국제표준 마에스트로 주요이슈 분석서 [IoT, 빅데이터, 인공지능 표준화]
        • 2020년 ICT국제표준 마에스트로 주요이슈 분석서 [차세대 비디오 압축기술 표준화]
        • 2020년 ICT국제표준 마에스트로 주요이슈 분석서 [ATSC 디지털방송 표준화]
        • 2020년 ICT국제표준 마에스트로 주요이슈 분석서 [3GPP V2X 표준화]
        • 2020년 ICT 표준기술 우수자문 사례집
        • ICT 국제표준화 노하우 가이던스 [입문 소양편]
        • ISO/IEC JTC 1 인포그래픽(국영문)
        • 2020년 ICT 표준해설서
        • 클라우드 기반 환경에서의 보안서비스 구현을 위한 IETF I2NSF 표준해설서
        • 블록체인 기반의 안전한 인증 및 데이터 주권을 위한 W3C 탈중앙ID 표준해설서
        • 웹에서의 실시간 비디오, 오디오, 데이터 통신 프래그래밍을 위한 W3C WebRTC 표준해설서
        • HTML5 양방향 웹소켓 통신 기반 W3C 자율주행차 인터페이스 해설서
        • 2020년 ICT 표준활용실태 조사보고서
        • TTA 표준 웰메이드 스토리
        • 2019년 ICT 표준기술 우수자문 사례집
        • 2020년 ICT국제표준 마에스트로 주요이슈 분석서 [ITU-T 차세대 방송 표준화]
        • 2019년 ICT 표준활용실태 조사보고서
        • 2018년 ICT 표준활용실태 조사보고서
        • 2018년 ICT 표준기술 자문서비스 사례집
        • 2018년 ICT 표준 해설서
        • 사용자 인증(파이도를 중심으로) 표준 안내서
        • UHD 방송 표준 안내서
        • 사물인터넷(oneM2M 릴리즈2를 중심으로) 표준 안내서
        • 2017년 ICT 표준기술 자문서비스 사례집
        • 2016년 ICT 표준기술 자문서비스 사례집
        • 128비트 블록암호 LEA 및 운영모드
        • 사업자간 UICC 이동성제공을 위한 VoLTE 단말규격
        • 공공부문 클라우드 서비스 도입적합성 자가진단 및 유형별 도입지침
        • 2015년 ICT 표준/기술 자문서비스 사례집
        • 스마트폰 음성인식 긴급전화 서비스 해설서
        • NFC P2P 기반 모바일 전자 영수증 관리 규격 해설서
        • 모바일 전자 영수증 규격 해설서
        • oneM2M 어플리케이션 개발자 가이드 표준해설서
        • 공개소프트웨어 표준해설서
        • oneM2M 서비스 플랫폼 표준 해설서
        • CCTV 시스템의 설계 및 설치 표준 해설서
      • [2021-12] 클라우드 컴퓨팅 - 클라우드 서비스 개발 및 운용관리를 위한 요구사항(TTAE.IT-Y.3525)
      • [2021-12] 대국민 경보 서비스를 위한 통합 경보 시스템과 지역 경보 시스템 연동 게이트웨이 인터페이스(TTAK.KO-06.0498/R1)
      • [2021-12] 긴급 구조 요청 스마트폰 사용자 인터페이스(TTAK.KO-06.0486/R1)
      • [2021-12] 긴급구조용 측위시스템Stage 3:네트워크 시작 위치서비스 인터페이스(TTAK.KO-06.0401-Part3)
      • [2021-12] 독서 장애인을 위한 전자책 접근성 가이드-제2부:인증 심사 기준(TTAK.KO-10.0905-Part2/R1)
      • [2021-12] 검증용 데이터세트의 밸런스 기반 인공지능 소프트웨어 신뢰성 평가 방법-제3부:시계열 타입 밸런스 데이터 설계(TTAK.KO-11.0280-Part3)
      • [2021-12] 인증 최적화를 위한 위험 식별(TTAE.IT-X.1451)
      • [2021-12] 드론 임무 센서 데이터용 비행정보(TTAK.KO-10.1319)
      • [2021-12] 영상 객체 재인식을 위한 다중CCTV디바이스간 상호연동 방법(TTAK.KO-10.1313)
      • [2021-12] 실내용 스마트재배시스템 기능구조 및 인터페이스 요구사항(TTAK.KO-10.1311)
      • [2021-11] 국선단자함 내 통신설비 설치 방법(TTAK.KO-04.0229/R1)O-10.1311)
      • [2021-11] 정보통신 공사 설계 기준-제2부:구내통신 배관 및 배선(TTAK.KO-04.0225-Part2/R1)
      • [2021-11] 구내 정보통신 공사 표준설계설명서(TTAK.KO-04.0205/R1)
      • [2021-11] 의료사물인터넷(IoMT)플랫폼 사이버보안 점검지침(TTAK.KO-12.0386)
      • [2021-11] 업무용 건축물에 대한 구내통신 선로설비(TTAK.KO-04.0002/R3)
      • [2021-11] 주거용 건축물에 대한 구내통신 선로설비(TTAK.KO-04.0001/R4)
      • [2021-11] 지능형CCTV영상 시놉시스 생성 및 관리를 위한 메타데이터(TTAK.KO-10.1348)
      • [2021-11] 스마트 노지 작물 빅데이터 수집 항목 정의(TTAK.KO-10.1347)
      • [2021-10] 디지털 트윈 기반 스마트 축사 서비스 요구사항(TTAK.KO-10.1346)
      • [2021-10] 적응형 부호 및 변조방식을 사용하는 위성통신시스템의 성능 목표 결정 방법(TTAK.IR-S.2131/R1)
      • [2021-10] 홈 네트워크 서비스를 위한 방범 및 제어 기기RJ45인터페이스(TTAK.KO-04.0080/R2)
      • [2021-10] 블록체인 기반 적합성평가 시험성적서 검증을 위한 참조 모델(TTAK.KO-10.1351)
      • [2021-10] 바이오(생체)인식 용어(TTAK.KO-12.0048/R2)
      • [2021-10] 무선통신기반 열차제어시스템(CBTC)의 보안요구사항(TTAK.KO-12.0385)
      • [2021-10] 취약점 탐지 및 해결을 위한 구조화된 소프트웨어 취약점 데이터베이스 정보 표현 규격(TTAK.KO-12.0384)
      • [2021-10] 축산 분야ICT융복합 장비운용 요구사항 및 설치 지침-제1부:돼지(TTAK.KO-10.1175-Part1/R1)
      • [2021-10] 스마트 온실ICT융복합 장비운용 요구사항 및 설치 지침(TTAK.KO-10.1173/R1)
      • [2021-10] 고전력스위치 소자의 정적 상태 특성 측정 지침(TTAK.KO-10.1345)
      • [2021-10] 홈 네트워크 서비스를 위한 영상 음성 기기RJ45인터페이스(TTAK.KO-04.0074/R2)
      • [2021-10] 양자키 분배망–서비스 품질 보장 요구사항(TTAE.IT-Y.3806)
    • [Paloalto] IT/Cloud/Security 참고 자료
      • [Paloalto] 제로 트러스트 엔터프라이즈 설계
      • [Paloalto] IaC 보안 프로그램 운영화 가이드
      • [Paloalto] Prisma: 클라우드 위협 선제 방어
      • [Paloalto] Prisma: DevOps 보호
      • [Paloalto] Prisma: 클라우드 데이터 보호
      • [Paloalto] SECURITY OPERATING PLATFORM을 통한 SD-WAN 보안
      • [Paloalto] 클라우드 보안의 차세대 진화
      • [Paloalto] SAAS 애플리케이션을 안전하게 보호
      • [Paloalto] Global and Regional WildFire Clouds
      • [Paloalto] 트래픽을 복호화하지 않고 표적 공격을 막는 법
  • Annual_Report
    • [과학기술정보통신부] 백서 모음
      • 2022년 양자정보기술 백서
    • NCSC 국가사이버안전센터 연례보고서
      • NCSC_2022년 사이버안보 위협 주요 특징 및 내년 전망
      • NCSC_2021 국가사이버안전센터 연례보고서(국문)
      • NCSC_Annual Review 2021[Eng]
      • NCSC_2020 국가사이버안전센터 연례보고서(국문)
      • NCSC_Annual Review 2020[Eng]
      • NCSC_2019 국가사이버안전센터 연례보고서(국문)
      • NCSC_Annual Review 2019[Eng]
    • NCSC 국가정보보호 백서
      • NCSC_2022 국가정보보호백서[국문]
      • NCSC_2022 국가정보보호백서[ENG]
      • NCSC_2021 국가정보보호백서[국문]
      • NCSC_2021 국가정보보호백서[ENG]
      • NCSC_2020 국가정보보호백서[국문]
      • NCSC_2019 국가정보보호백서[국문]
      • NCSC_2018 국가정보보호백서[국문]
      • NCSC_2017 국가정보보호백서[국문]
      • NCSC_2016 국가정보보호백서[국문]
      • NCSC_2015 국가정보보호백서[국문]
      • NCSC_2014 국가정보보호백서[국문]
      • NCSC_2013 국가정보보호백서[국문]
      • NCSC_2012 국가정보보호백서[국문]
      • NCSC_2011 국가정보보호백서[국문]
      • NCSC_2010 국가정보보호백서[국문]
      • NCSC_2009 국가정보보호백서[국문]
      • NCSC_2008 국가정보보호백서[국문]
      • NCSC_2007 국가정보보호백서[국문]
      • NCSC_2006 국가정보보호백서[국문]
      • NCSC_2005 국가정보보호백서[국문]
      • NCSC_2004 국가정보보호백서[국문]
      • NCSC_2003 국가정보보호백서[국문]
      • NCSC_2002 국가정보보호백서[국문]
    • NIA 국가지능정보화백서
      • 2022 국가지능정보화백서(국문)
      • 2022 국가지능정보화백서(영문)
      • 2021 국가지능정보화백서(국문)
      • 2021 국가지능정보화백서(영문)
      • 2020 국가정보화백서(국문)
      • 2020 국가정보화백서(영문)
      • 2019 국가정보화백서(국문)
      • 2019 국가정보화백서(영문)
      • 2018 국가정보화백서(국문)
      • 2018 국가정보화백서(영문)
      • 2017년도 국가정보화 백서(국문)
      • 2017년도 국가정보화 백서(영문)
      • 2016년도 국가정보화 백서(국문)
      • 2016년도 국가정보화 백서(영문)
      • 2015년도 국가정보화백서(극믄)
      • 2014년도 국가정보화백서(국문)
      • 2014년도 국가정보화백서 요약본(국문)
      • 2014년도 국가정보화 백서(영문)
      • 2013년도 국가정보화백서(국문)
      • 2012년도 국가정보화백서(국문)
      • 2011년도 국가정보화백서(국문)
      • 2010년도 국가정보화백서(국문)
      • 2010년도 국가정보화백서(영문)
      • 2009년도 국가정보화백서(국문)
      • 2009년도 국가정보화백서 요약본(국문)
      • 2008년도 국가정보화백서(국문)
      • 2007년도 국가정보화백서(국문)
      • 2006년도 국가정보화백서(국문)
      • 2006년도 국가정보화백서 요약본(영문)
      • 2005년도 국가정보화백서(국문)
      • 2002년도 국가정보화백서(국문)
      • 2001년도 국가정보화백서(국문)
      • 2000년도 국가정보화백서(국문)
      • 1999년도 국가정보화백서(국문)
      • 1999년도 국가정보화백서 요약본(영문)
      • 1998년도 국가정보화백서(국문)
      • 1998년도 국가정보화백서 요약본(영문)
      • 1997년도 국가정보화백서(국문)
      • 1997년도 국가정보화백서 요약본(영문)
      • 1996년도 국가정보화백서(국문)
      • 1996년도 국가정보화백서 요약본(영문)
      • 1995년도 국가정보화백서(국문)
      • 1994년도 국가정보화백서(국문)
      • 1994년도 국가정보화백서 요약본(영문)
      • 1993년도 국가정보화백서(국문)
  • NCSC_Cyber_Security_Daily
    • [2023년] [NCSC] Cyber Security
      • 한·미정상 공동성명 '사이버안보 분야' 주요내용
      • 국정원, 세계 최초 「양자암호통신장비 보안기능 검증」 시행
      • 韓·獨 정보기관 합동, 킴수키 조직의 신종 해킹 수법 경고
      • 국정원, 북한의 세계 각국 중요 인프라 대상 랜섬웨어 공격 관련 '韓美 합동 사이버보안 권고문' 발표
      • [2023년][7월] [NCSC] Cyber Security
        • NCSC_2023-07-12
        • NCSC_2023-07-11
        • NCSC_2023-07-10
        • NCSC_2023-07-07
        • NCSC_2023-07-06
        • NCSC_2023-07-05
        • NCSC_2023-07-03
      • [2023년][6월] [NCSC] Cyber Security
        • NCSC_2023-06-28
        • NCSC_2023-06-27
        • NCSC_2023-06-26
        • NCSC_2023-06-22
        • NCSC_2023-06-21
        • NCSC_2023-06-20
        • NCSC_2023-06-16
        • NCSC_2023-06-15
        • NCSC_2023-06-14
        • NCSC_2023-06-13
        • NCSC_2023-06-12
        • NCSC_2023-06-08
        • NCSC_2023-06-07
        • NCSC_2023-06-06
        • NCSC_2023-06-05
        • NCSC_2023-06-02
        • NCSC_2023-06-01
      • [2023년][5월] [NCSC] Cyber Security
        • NCSC_2023-05-30
        • NCSC_2023-05-29
        • NCSC_2023-05-26
        • NCSC_2023-05-25
        • NCSC_2023-05-24
        • NCSC_2023-05-23
        • NCSC_2023-05-22
        • NCSC_2023-05-19
        • NCSC_2023-05-18
        • NCSC_2023-05-17
        • NCSC_2023-05-16
        • NCSC_2023-05-15
        • NCSC_2023-05-12
        • NCSC_2023-05-11
        • NCSC_2023-05-10
        • NCSC_2023-05-09
        • NCSC_2023-05-08
        • NCSC_2023-05-05
        • NCSC_2023-05-04
        • NCSC_2023-05-03
        • NCSC_2023-05-01
      • [2023년][4월] [NCSC] Cyber Security
        • NCSC_2023-04-28
        • NCSC_2023-04-27
        • NCSC_2023-04-25
        • NCSC_2023-04-24
        • NCSC_2023-04-21
        • NCSC_2023-04-20
        • NCSC_2023-04-19
        • NCSC_2023-04-18
        • NCSC_2023-04-17
        • NCSC_2023-04-14
        • NCSC_2023-04-13
        • NCSC_2023-04-12
        • NCSC_2023-04-11
        • NCSC_2023-04-07
        • NCSC_2023-04-04
        • NCSC_2023-04-03
      • [2023년][3월] [NCSC] Cyber Security
        • NCSC_2023-03-31
        • NCSC_2023-03-30
        • NCSC_2023-03-29
        • NCSC_2023-03-28
        • NCSC_2023-03-27
        • NCSC_2023-03-23
        • NCSC_2023-03-22
        • NCSC_2023-03-21
        • NCSC_2023-03-20
        • NCSC_2023-03-17
        • NCSC_2023-03-16
        • NCSC_2023-03-15
        • NCSC_2023-03-14
        • NCSC_2023-03-13
        • NCSC_2023-03-10
        • NCSC_2023-03-09
        • NCSC_2023-03-08
        • NCSC_2023-03-07
        • NCSC_2023-03-06
        • NCSC_2023-03-03
        • NCSC_2023-03-02
        • NCSC_2023-03-01
      • [2023년][2월] [NCSC] Cyber Security
        • NCSC_2023-02-28
        • NCSC_2023-02-27
        • NCSC_2023-02-24
        • NCSC_2023-02-23
        • NCSC_2023-02-22
        • NCSC_2023-02-21
        • NCSC_2023-02-20
        • NCSC_2023-02-17
        • NCSC_2023-02-16
        • NCSC_2023-02-15
        • NCSC_2023-02-14
        • NCSC_2023-02-10
        • NCSC_2023-02-09
        • NCSC_2023-02-08
        • NCSC_2023-02-07
        • NCSC_2023-02-06
        • NCSC_2023-02-03
        • NCSC_2023-02-02
        • NCSC_2023-02-01
      • [2023년][1월] [NCSC] Cyber Security
        • NCSC_2023-01-31
        • NCSC_2023-01-30
        • NCSC_2023-01-27
        • NCSC_2023-01-26
        • NCSC_2023-01-25
        • NCSC_2023-01-24
        • NCSC_2023-01-20
        • NCSC_2023-01-19
        • NCSC_2023-01-18
        • NCSC_2023-01-17
        • NCSC_2023-01-16
        • NCSC_2023-01-13
        • NCSC_2023-01-12
        • NCSC_2023-01-11
        • NCSC_2023-01-10
        • NCSC_2023-01-09
    • [2022년도] [NCSC] Cyber Security
      • NCSC_2022-12-22
      • NCSC_2022-12-21
      • NCSC_2022-12-20
      • NCSC_2022-12-19
      • NCSC_2022-12-16
      • NCSC_2022-12-15
      • NCSC_2022-12-14
      • NCSC_2022-12-13
      • NCSC_2022-12-12
      • NCSC_2022-12-09
      • NCSC_2022-12-08
      • NCSC_2022-12-07
      • NCSC_2022-12-06
      • NCSC_2022-12-05
      • NCSC_2022-12-02
      • NCSC_2022-12-01
      • NCSC_2022-11-30
      • NCSC_2022-11-29
      • NCSC_2022-11-28
      • NCSC_2022-11-25
      • NCSC_2022-11-24
      • NCSC_2022-11-23
      • NCSC_2022-11-22
      • NCSC_2022-11-21
      • NCSC_2022-11-18
      • NCSC_2022-11-17
      • NCSC_2022-11-16
      • NCSC_2022-11-15
      • NCSC_2022-11-14
      • NCSC_2022-11-11
      • NCSC_2022-11-10
      • NCSC_2022-11-09
      • NCSC_2022-11-08
      • NCSC_2022-11-07
      • NCSC_2022-11-04
      • NCSC_2022-11-03
      • NCSC_2022-11-02
      • NCSC_2022-11-01
  • Security WebToons/Movies
    • [NCSC] WebToons/Movies
      • 자료공개 협박메일과 가상화폐 요구
      • 비대면 시대의 해커
      • 해외 랜섬웨어 사례로 보는 사이버안보의 중요성
      • 공급망 공격
      • 최근 랜섬웨어 트렌드
      • 청소년을 위한 사이버보안 드라마
      • 국정원 보안정책 이해하기
      • 신입이 알려주는 보편적인 해킹 유형 3가지!
      • 간단하게 정보를 보호하는 방법
      • 파일 다운로드도 신중하게!
      • 국가 사이버위협 정보공유의 이해
      • 클라우드 보안의 이해
      • 사이버 환경의 위협요인과 우리가 해야할 일
      • 비대면 시대 사이버보안
      • 꼼짝마라, 사이버 해커들!
      • 꼭꼭 숨어도! 도망가도! 다 찾는다!
      • 악성코드 넌 우리 손바닥 안이야!
      • 피해를 최소화하는 방법!
      • 사이버 안보는 내가 지킨다
  • Educational Institute
    • [KISA Academy] 사이버보안인재센터
      • KISA-Academy-최정예 정보보호 전문인력 양성 교육 안내/신청
      • KISA-Academy-실전형 사이버보안 전문인력 양성 교육 안내/신청
      • KISA-Academy-SW 개발보안 교육 안내/신청
      • KISA-Academy-민간 SW개발보안 교육 안내/신청
      • KISA-Academy-행정기관 정보시스템 등급제 교육 안내/신청
      • KISA-Academy-행정기관 정보보호(공무원) 교육 안내/신청
    • [PRIVACY] 개인정보보호 포털
      • [개인정보보호위원회] 보건의료데이터 활용 가이드라인(2022.12)
      • [개인정보보호위원회] 가명정보 처리 가이드라인(2022.4.)
      • [개인정보보호위원회] 우리 기업을 위한 EU 일반 개인정보보호법(GDPR) 가이드북(2022.12. 개정)
      • [개인정보보호위원회] 가명정보 활용 우수사례집
      • PRIVACY-온라인(단체수강) 교육 안내/신청
      • PRIVACY-형장교육 안내/신청
      • PRIVACY-사업자(공공및 일반사업자) 교육 안내/신청
      • PRIVACY-사업자(온라인사업자) 교육 안내/신청
      • PRIVACY-국민(어린이) 교육 안내/신청
      • PRIVACY-국민(초등학생) 교육 안내/신청
      • PRIVACY-국민(중학생) 교육 안내/신청
      • PRIVACY-국민(고등학생) 교육 안내/신청
      • PRIVACY-국민(일반인) 교육 안내/신청
      • PRIVACY-국민(다국어-Global) 교육 안내/신청
  • Web Hack Defense Code
    • Naver-Lucy XSS Servlet Filter
    • OWASP Enterprise Security API (ESAPI)
    • OWASP Java Encoder
  • Solution Manaul
    • SQL Server Manaul
      • SQL Server Manaul
        • SQL Server Download
          • SQL Server Download
          • SSMS(SQL Server Management Studio) Download
          • Azure Data Studio Download
        • SQL Server 2022-Document
        • SQL Server 2019-Document
        • Azure Data Studio-Document
        • SQL Server on Linux-Document
        • Azure Arc 지원 SQL Server-Document
      • Tuning Manaul
        • Performance-Document
        • Intelligent Query Processing-Document
        • Automatic Tuning-Document
        • Database Engine Tuning Advisor-Document
        • In Memory Oltp-Document
      • Security Manaul
        • Sql Vulnerability Assessment-Document
        • Authentication Access-Document
        • Always Encrypted-Document
        • SQL Server Audit-Document
        • Enclave-Document
        • Dynamic Data Masking-Document
        • 투명한 데이터 암호화(TDE)-Document
        • Row Level Security-Document
      • Big Data & Machine Learning
        • Analysis Platform System-Document
        • SQL Machine Learning-Document
        • PolyBase를 사용한 데이터 가상화-Document
      • Azure 의 SQL Manaul
        • Azure Data Studio-Document
        • Azure SQL-Document
        • Azure SQL Database-Document
        • Azure SQL Managed Instance-Document
        • Azure Windows VM에서 SQL Server-Document
        • Azure Linux VM에서 SQL Server-Document
        • Azure Synapse Analytics-Document
        • Azure Database Migration Service-Document
      • Business continuity
        • Backup and Restore-Document
        • Always On 가용성 그룹-Document
        • Always On 장애 조치(failover) 클러스터 인스턴스-Document
        • Database Mirroring-Document
        • Log Forwarding-Document
        • Replication-Document
      • Managed & Monitorings
        • transaction-log-Document
        • Maintenance Plans-Document
        • SQL Server Agent-Document
        • Track Data Changes-Document
        • Data Compression-Document
        • Extended Events-Document
    • Tamxsoft Manual
      • JEUS 8-Document
      • JEUS 7-Document
      • JEUS 6-Document
      • WebtoB v5.0-Document
      • WebtoB v4.1-Document
      • Tibero 6-Document
      • Tibero 5-Document
    • NGINX Manaul
      • NGINX-Document
    • Nodejs Manaul
      • Nodejs-Document
    • JBoss Community Archive Manaul
      • JBoss Web Services 5.3.0.Final-Document
      • JBoss Application Server 7.2-Document
      • JBoss Application Server 7.1-Document
      • JBoss Application Server 7.0-Document
      • WildFly Latest-Document
      • WildFly 10-Document
      • WildFly 9-Document
      • WildFly 8-Document
    • Apache Tomcat Manaul
      • Apache Tomcat 11-Document
      • Apache Tomcat 10-Document
      • Apache Tomcat 9-Document
      • Copy of Apache Tomcat 8-Document
      • Apache Tomcat connectors-Document
      • Apache Tomcat Native 2-Document
      • Apache Tomcat Native 1.2-Document
      • Apache Tomcat Migration-Document
      • Apache Tomcat Specifications-Document
  • Mobile Security Updates
    • [2023] SAMSUNG Mobile
      • SAMSUNG Mobile Security Maintenance February 2023
      • SAMSUNG Mobile Security Maintenance Release Summary January 2023
    • [2023] LG Mobile
      • LG Mobile Security Maintenance Release Summary February 2023
      • LG Mobile Security Maintenance Release Summary January 2023
    • [2023] Huawei Mobile
      • HUAWEI EMUI/Magic UI security updates February 2023
      • HUAWEI EMUI/Magic UI security updates January 2023
  • Security Glossary
    • Apple Platform Security Glossary
  • Android Security Test
    • AddressSanitizer
    • Arm Memory Tagging Extension(MTE)
    • BoundsSanitizer
    • ControlFlowIntegrity(CFI)
    • AArch64 바이너리용 실행 전용 메모리(XOM)
    • libFuzzer를 통한 퍼징
    • GWP-ASan 및 KFENCE
    • HWAddressSanitizer
    • 정수 오버플로 제거
    • 커널 제어 흐름 무결성
    • LLVM 새니타이저
    • 메모리 안전
      • HWASan, ASan, KASAN
      • HWASan 보고서 이해하기
    • Android 보안 테스트 모음 개발 키트(STS SDK)
    • Scudo
    • ShadowCallStack
    • 태그가 지정된 포인터
    • 0으로 초기화된 메모리
  • [KISA] 제로트러스트 가이드라인
    • [KISA] 제로트러스트 가이드라인
  • Cyber ​​Crisis Warning Level
    • Cyber ​​Crisis Warning Level List
  • RansomWare Protection
    • [KISA] 보이스피싱 대응 방법
    • [KISA] 인터넷 브라우저를 더 안전하게!
    • [KISA] 랜섬웨어 대응 가이드라인('23년 개정본)
    • [이글루코퍼레이션/코스닥협회] Beginner를 위한 램섬웨어 예방 및 대응 가이드
    • [금융감독원/DAXA] 가상자산 연계 투자사기 사례 7선
    • 랜섬웨어(Ransomware)
    • 랜섬웨어(Ransomware) 예방방법
    • 랜섬웨어(Ransomware) 복구절차
    • [NoMoreRANSOM] 랜섬웨어 복구 프로그램 및 지원 사이트
  • 취업/채용/공고 정보 사이트
    • [NHN Recruitings] NHN 채용/취업/공고 사이트
    • [Naver Cloud Recruitings] nCloud 채용/취업/공고 사이트
  • Books
    • [쿠팡] 안드로이드 모바일 악성코드와 모의 해킹 진단
    • [쿠팡] 안드로이드 해킹과 보안 : 안드로이드 플랫폼과 애플리케이션 취약점 분석 사례를 통한
    • [쿠팡] iOS Application Security:보안담당자와 개발자를 위한 최고의 안내서
    • [쿠팡] iOS 해킹과 보안 가이드:iOS 공격 사례와 방어 기술
  • Killing-Time
    • 탑툰-선생님의 노력[19금]
    • 탑툰-보스의 딸[19금]
    • 탑툰-나의 일러레님[19금]
    • 탑툰-요구르트 아줌마[19금]
    • 탑툰-엄마야 누나야[19금]
    • 탑툰-내 맘대로 장모님[19금]
    • 탑툰-뺏는 남자[19금]
    • 탑툰-모비딕[19금]
    • 탑툰-치한중독[19금]
    • 탑툰-건물주 누나[19금]
    • 탑툰 취화점
    • 탑툰-여동생이랑 비밀 레슨[19금]
    • 탑툰-구멍가게 구멍열었습니다[19금]
    • 탑툰-그 남자의 공부법[19금]
    • 탑툰-치킨클럽[19금]
    • 탑툰-최면으로 그녀들을 함락시키는 법[19금]
    • 무툰 도시정벌9부
    • 무툰 열혈강호
  • Hobby
    • [Youtube] Succulent
      • [Youtube] Grow succulent #1
      • [Youtube] Grow succulent #2
      • [Youtube] Grow succulent #3
      • [Youtube] Grow succulent #4
      • [Youtube] Grow succulent #5
Powered by GitBook
On this page
  • Arm Memory Tagging Extension(MTE) 란?
  • MTE 작동 모드
  • 동기 모드(SYNC)
  • 비동기 모드(ASYNC)
  • 비대칭 모드(ASYMM)
  • 사용자 공간의 MTE
  • 빌드 시스템을 사용하여 MTE 사용 설정
  • 시스템 속성을 사용하여 MTE 사용 설정
  • 환경 변수를 사용하여 MTE 사용 설정
  • 애플리케이션에 MTE 사용 설정
  • MTE 시스템 이미지 빌드
  • CPU별 기본 MTE 수준 구성
  • 커널의 MTE
  • 권장 용도
  • MTE 지원 플랫폼 구성요소
  • MTE 부트로더 지원
  • 부트로더 지원
  • 사용자 인터페이스
  • 시스템 속성
  • MTE 보고서 이해하기
  • 동기 모드 MTE
  • 후보 원인
  • 상세 원인 판단 휴리스틱
  • 비동기 모드 MTE
  • 고급 주제
  • 출처 : 바로가기
  1. Android Security Test

Arm Memory Tagging Extension(MTE)

Android 사이트 참고

PreviousAddressSanitizerNextBoundsSanitizer

Last updated 2 years ago

Arm Memory Tagging Extension(MTE) 란?

Arm v9에서는 태그된 메모리의 인 Arm (MTE)을 도입했습니다.

MTE는 상위 수준에서 추가 메타데이터로 각 메모리 할당/할당 해제에 태그를 지정합니다. 메모리 위치에 태그를 할당하므로 이 메모리 위치를 참조하는 포인터와 연결할 수 있습니다. 런타임 시 CPU는 포인터와 메타데이터 태그가 각 로드 및 저장에서 일치하는지 확인합니다.

Android 12에서는 커널과 사용자 공간 힙 메모리 할당자가 메타데이터로 각 할당을 강화할 수 있습니다. 이렇게 하면 코드베이스에서 가장 일반적인 메모리 안전 버그의 원인이 되는 use-after-free 버그와 buffer-overflow 버그를 감지할 수 있습니다.

MTE 작동 모드

MTE에는 세 가지 작동 모드가 있습니다.

  • 동기 모드(SYNC)

  • 비동기 모드(ASYNC)

  • 비대칭 모드(ASYMM)

동기 모드(SYNC)

이 모드는 성능보다 정확한 버그 감지에 최적화되어 있으며, 높은 성능 오버헤드가 허용될 경우 정밀한 버그 감지 도구로 사용할 수 있습니다. 이 모드를 사용 설정하면 MTE SYNC가 보안 완화 역할을 합니다. 태그 불일치 시 프로세서는 즉시 실행을 취소하고 SIGSEGV(코드 SEGV_MTESERR) 및 메모리 액세스와 장애가 발생한 주소에 관한 전체 정보를 사용하여 프로세스를 종료합니다.

테스트 중에 HWASan/KASAN의 대안으로 또는 타겟 프로세스가 취약한 공격 표면을 나타내는 경우 프로덕션 환경에서 이 모드를 사용하는 것이 좋습니다. 또한 ASYNC 모드에서 버그가 있음을 표시하면 런타임 API를 사용하여 SYNC 모드로 실행을 전환함으로써 정확한 버그 신고를 가져올 수 있습니다.

SYNC 모드에서 실행할 경우 는 모든 할당 및 할당 해제에 관한 스택 트레이스를 기록하고 이를 사용하여 메모리 오류 설명(예: use-after-free 또는 buffer-overflow)과 관련 메모리 이벤트의 스택 트레이스가 포함된 더 나은 오류 보고서를 제공합니다. 이러한 보고서를 통해 더 많은 문맥 정보를 얻을 수 있고 더 쉽게 버그를 추적하고 수정할 수 있습니다.

비동기 모드(ASYNC)

이 모드는 버그 신고의 정확성보다 성능에 최적화되어 있으며 메모리 안전 버그를 감지하는 도구(오버헤드 낮음)로 사용할 수 있습니다. 태그 불일치 시 프로세서는 가장 가까운 커널 항목(예: syscall 또는 타이머 중단)까지 실행을 계속하고 여기서 오류 주소나 메모리 액세스를 기록하지 않고 SIGSEGV(코드 SEGV_MTEAERR)를 사용하여 프로세스를 종료합니다. 메모리 안전 버그의 밀도가 낮은 것으로 알려진(테스트 중에 SYNC 모드를 사용하면 됨) 잘 테스트된 코드베이스의 프로덕션 환경에서 이 모드를 사용하는 것이 좋습니다.

비대칭 모드(ASYMM)

Arm v8.7-A의 추가 기능인 비대칭 MTE 모드는 메모리 읽기에 관한 동기 검사와 메모리 쓰기에 관한 비동기 검사를 제공하며 성능은 ASYNC 모드의 성능과 유사합니다. 대부분의 경우 비대칭 모드가 ASYNC 모드보다 개선된 것이므로 가능하면 ASYNC 대신 이 모드를 사용하는 것이 좋습니다.

따라서 아래에 설명된 API에는 비대칭 모드가 언급되어 있지 않습니다. 대신 비동기가 요청될 때 항상 비대칭 모드를 사용하도록 OS를 구성할 수 있습니다. 자세한 내용은 'CPU별 기본 MTE 수준 구성' 섹션을 참고하세요.

사용자 공간의 MTE

참고: MTE 사용 설정은 프로세스 전체에 적용되는 속성입니다. MTE를 사용 설정하면 프로세스의 모든 네이티브 힙 할당에 적용됩니다.

빌드 시스템을 사용하여 MTE 사용 설정

프로세스 전체에 적용되는 MTE는 기본 실행 파일의 빌드 시간 설정으로 제어됩니다. 다음 옵션을 사용하면 개별 실행 파일 또는 소스 트리의 전체 하위 디렉터리에서 이 설정을 변경할 수 있습니다. 설정은 라이브러리에서 또는 실행 파일도 테스트도 아닌 타겟에서 무시됩니다.

MTE 모드
설정

비동기 MTE

동기 MTE

또는 Android.mk:에서

MTE 모드
설정

Asynchronous MTE

LOCAL_SANITIZE := memtag_heap

Synchronous MTE

LOCAL_SANITIZE := memtag_heap LOCAL_SANITIZE_DIAG := memtag_heap

2. 제품 변수를 사용하여 소스 트리의 하위 디렉터리에서 MTE 사용 설정:

MTE 모드
포함 목록
제외 목록

비동기

PRODUCT_MEMTAG_HEAP_ASYNC_INCLUDE_PATHS MEMTAG_HEAP_ASYNC_INCLUDE_PATHS

PRODUCT_MEMTAG_HEAP_EXCLUDE_PATHS MEMTAG_HEAP_EXCLUDE_PATHS

동기

PRODUCT_MEMTAG_HEAP_SYNC_INCLUDE_PATHS MEMTAG_HEAP_SYNC_INCLUDE_PATHS

PRODUCT_MEMTAG_HEAP_EXCLUDE_PATHS MEMTAG_HEAP_EXCLUDE_PATHS

또는

MTE 모드
설정

비동기 MTE

MEMTAG_HEAP_ASYNC_INCLUDE_PATHS

동기 MTE

MEMTAG_HEAP_SYNC_INCLUDE_PATHS

또는 실행 파일의 제외 경로 지정

MTE 모드
설정

비동기 MTE

PRODUCT_MEMTAG_HEAP_EXCLUDE_PATHS MEMTAG_HEAP_EXCLUDE_PATHS

동기 MTE

PRODUCT_MEMTAG_HEAP_EXCLUDE_PATHS MEMTAG_HEAP_EXCLUDE_PATHS

  RODUCT_MEMTAG_HEAP_SYNC_INCLUDE_PATHS=vendor/$(vendor)
  PRODUCT_MEMTAG_HEAP_EXCLUDE_PATHS=vendor/$(vendor)/projectA \
                                    vendor/$(vendor)/projectB

시스템 속성을 사용하여 MTE 사용 설정

위의 빌드 설정은 다음 시스템 속성을 설정하여 런타임에 재정의할 수 있습니다.

arm64.memtag.process.<basename> = (off|sync|async)

여기서 basename은 실행 파일의 기본 이름을 나타냅니다.

예를 들어 비동기 MTE를 사용하도록 /system/bin/ping 또는 /data/local/tmp/ping을 설정하려면 adb shell setprop arm64.memtag.process.ping async를 사용합니다.

참고: 이러한 속성은 프로세스 시작 시 한 번만 읽습니다. 여러 MTE 모드로 프로토타입을 신속하게 제작하고 실험할 때 사용하는 것이 좋습니다. 이 속성은 자바 애플리케이션에는 적용되지 않습니다. MTE 설정이 AndroidManifest.xml 구성에 기반하기 때문입니다.

환경 변수를 사용하여 MTE 사용 설정

빌드 설정을 재정의하는 또 다른 방법은 환경 변수(MEMTAG_OPTIONS=(off|sync|async))를 정의하는 것입니다. 환경 변수와 시스템 속성이 둘 다 정의된 경우 변수가 우선합니다.

애플리케이션에 MTE 사용 설정

주의: MTE를 사용 설정하는 애플리케이션은 Play 스토어에 제공하기 전에 MTE 호환 기기에서 철저히 테스트해야 합니다. 그러지 않으면 MTE 지원 기기에서만 심각한 버그가 발견되어 앱의 사용성이 저하될 수 있습니다.

android:memtagMode=(off|default|sync|async)

<application> 태그에 설정된 경우 이 속성은 애플리케이션에서 사용하는 모든 프로세스에 영향을 미치며 <process> 태그를 설정하여 개별 프로세스에 관해 재정의할 수 있습니다.

$ adb shell am compat enable NATIVE_MEMTAG_[A]SYNC my.app.name

MTE 시스템 이미지 빌드

개발 및 브링업 중에는 모든 네이티브 바이너리에 MTE를 사용 설정하는 것이 좋습니다. 이렇게 하면 메모리 안전 버그를 조기에 감지할 수 있고 테스트 빌드에서 사용 설정된 경우 실제 사용자 범위가 제공됩니다.

개발 중에 모든 네이티브 바이너리에서 동기 모드로 MTE를 사용 설정하는 것이 좋습니다.

SANITIZE_TARGET=memtag_heap SANITIZE_TARGET_DIAG=memtag_heap m

CPU별 기본 MTE 수준 구성

일부 CPU에서는 ASYMM 또는 SYNC 모드의 MTE 성능이 ASYNC의 MTE 성능과 유사할 수 있습니다. 따라서 성능 저하 없이 더 엄격한 검사의 오류 감지 이점을 얻으려면 덜 엄격한 검사 모드가 요청될 때 이러한 CPU에 더 엄격한 검사를 사용 설정하는 것이 좋습니다. 기본적으로 ASYNC 모드에서 실행되도록 구성된 프로세스는 모든 CPU에서 ASYNC 모드로 실행됩니다. 특정 CPU에서 SYNC 모드로 이러한 프로세스를 실행하도록 커널을 구성하려면 부팅 시 값 동기화를 sysfs 항목 /sys/devices/system/cpu/cpu<N>/mte_tcf_preferred에 작성해야 합니다. 이는 init 스크립트를 사용하면 됩니다. 예를 들어 SYNC 모드에서 ASYNC 모드 프로세스를 실행하도록 CPU 0-1을 구성하고 ASYMM 모드에서 실행을 사용하도록 CPU 2-3을 구성하려면 다음을 공급업체 init 스크립트의 init 절에 추가할 수 있습니다.

  write /sys/devices/system/cpu/cpu0/mte_tcf_preferred sync
  write /sys/devices/system/cpu/cpu1/mte_tcf_preferred sync
  write /sys/devices/system/cpu/cpu2/mte_tcf_preferred asymm
  write /sys/devices/system/cpu/cpu3/mte_tcf_preferred asymm

SYNC 모드에서 실행되는 ASYNC 모드 프로세스의 Tombstone에는 메모리 오류 위치를 나타내는 정확한 스택 트레이스가 포함됩니다. 그러나 할당 또는 할당 해제 스택 트레이스는 포함되지 않습니다. 이러한 스택 트레이스는 프로세스가 SYNC 모드에서 실행되도록 구성된 경우에만 사용할 수 있습니다.

참고: 동기 MTE용으로 구성된 프로세스는 이 설정과 관계없이 항상 SYNC 모드에서 실행됩니다.

참고:

  • 이러한 API를 사용하려면 빌드 시스템이나 시스템 속성, 환경 변수, 앱 매니페스트 플래그, appcompat 기능을 사용하여 프로세스 또는 애플리케이션이 하나 이상의 MTE 모드에 선택되어 있어야 합니다.

  • M_HEAP_TAGGING_LEVEL_ASYNC <-> M_HEAP_TAGGING_LEVEL_SYNC는 여러 번 변경할 수 있습니다.

  • M_HEAP_TAGGING_LEVEL_ASYNC or M_HEAP_TAGGING_LEVEL_SYNC에서 M_HEAP_TAGGING_LEVEL_NONE으로의 전환은 단방향 전환으로, MTE를 영구적으로 사용 중지합니다. M_HEAP_TAGGING_LEVEL_NONE에서 원하는 모드로의 전환은 허용되지 않습니다.

int mallopt(M_THREAD_DISABLE_MEM_INIT, level)

여기서 level은 0 또는 1입니다. malloc에서 메모리 초기화를 사용 중지하고 정확성을 위해 필요한 경우가 아니라면 메모리 태그를 변경하지 않습니다.

참고:

  • 주로 성능 조정에 유용합니다. 여러 번 켜고 끌 수 있습니다.

  • 하위 스레드에 상속되지 않습니다.

int mallopt(M_MEMTAG_TUNING, level)

여기서 level은 다음과 같습니다.

  • M_MEMTAG_TUNING_BUFFER_OVERFLOW

  • M_MEMTAG_TUNING_UAF

태그 할당 전략을 선택합니다.

  • 기본 설정은 M_MEMTAG_TUNING_BUFFER_OVERFLOW입니다.

  • M_MEMTAG_TUNING_BUFFER_OVERFLOW: 인접한 할당에 고유한 태그 값을 할당하여 선형 버퍼 오버플로 및 언더플로 버그를 확정적으로 감지할 수 있게 합니다. 가능한 태그 값의 절반만 각 메모리 위치에 사용할 수 있으므로 이 모드에서는 use-after-free 버그를 감지할 가능성이 약간 줄어듭니다. MTE는 동일한 태그 그래뉼(16바이트 정렬 청크) 내에서 오버플로를 감지할 수 없으며 이 모드에서도 약간의 오버플로를 놓칠 수 있습니다. 이러한 오버플로는 메모리 손상의 원인이 될 수 없습니다. 한 그래뉼 내의 메모리는 여러 할당에 사용되지 않기 때문입니다.

  • M_MEMTAG_TUNING_UAF: 공간(버퍼 오버플로) 및 시간(해제 후 사용) 버그를 둘 다 감지할 수 있는 확률이 ~93%로 균일하도록 독립적으로 무작위 태그를 사용 설정합니다.

위에 설명된 API 외에도 숙련된 사용자라면 다음 사항을 알고 있는 것이 좋습니다.

커널의 MTE

커널에 MTE 가속 KASAN을 사용 설정하려면 커널을 CONFIG_KASAN=y, CONFIG_KASAN_HW_TAGS=y로 구성합니다. 이러한 구성은 Android 12-5.10부터 GKI 커널에서 기본적으로 사용 설정됩니다 다음 명령줄 인수를 사용하여 부팅 시간에 제어할 수 있습니다.

  • kasan=[on|off]: KASAN을 사용 설정하거나 사용 중지합니다(기본값: on).

  • kasan.mode=[sync|async]: 동기 모드와 비동기 모드 중에서 선택합니다(기본값: sync).

  • kasan.stacktrace=[on|off]: 스택 트레이스 수집 여부입니다(기본값: on).

    • 스택 트레이스 컬렉션에는 stack_depot_disable=off도 필요합니다.

  • kasan.fault=[report|panic]: 보고서만 출력할지 아니면 커널도 패닉 상태로 만들지 여부입니다(기본값: report). 이 옵션과 관계없이 첫 번째로 오류가 보고된 후 태그 검사가 사용 중지됩니다.

권장 용도

프로덕션 환경에서는 ASYNC 모드를 사용하는 것이 좋습니다. 그러면 프로세스 내에 메모리 안전 버그가 있는지 감지하고 추가 심층 방어를 위한 오버헤드가 낮은 도구가 제공됩니다. 버그가 감지되면 개발자는 런타임 API를 활용하여 SYNC 모드로 전환하고 샘플링된 사용자 집합에서 정확한 스택 트레이스를 가져올 수 있습니다.

SoC에 CPU별 기본 MTE 수준을 구성하는 것이 좋습니다. 일반적으로 ASYMM 모드는 ASYNC와 성능 특성이 동일하여 거의 항상 선호됩니다. 작은 in-order 코어는 세 가지 모드에서 모두 비슷한 성능을 보이는 경우가 많으며 SYNC를 선호하도록 구성할 수 있습니다.

중요: 개발 및 테스트 중에 코드 적용 범위는 모든 사용자 시나리오를 처리할 만큼 크지 않을 수 있습니다. 따라서 프로덕션 환경에서 ASYNC 모드를 사용하는 것은 상호 보완적이며 대부분의 중요한 프로세스에 고려해야 합니다. 또한 SYNC 모드는 보안이 런타임 성능보다 우선하는 중요한 시스템 프로세스에 사용할 수 있습니다.

MTE 지원 플랫폼 구성요소

Android 12에서는 보안에 중요한 여러 시스템 구성요소가 MTE ASYNC를 사용하여 최종 사용자 비정상 종료를 감지하고 심층 방어를 강화하는 역할을 합니다. 이러한 구성요소는 다음과 같습니다.

  • 네트워킹 데몬 및 유틸리티(netd 제외)

  • 블루투스, SecureElement, NFC HAL, 시스템 애플리케이션

  • statsd 데몬

  • system_server

  • zygote64(애플리케이션이 MTE 사용을 선택하도록 허용하기 위해)

이러한 타겟은 다음 기준에 따라 선택되었습니다.

  • 권한이 있는 프로세스(unprivileged_app SELinux 도메인이 액세스할 수 없는 항목에 액세스할 수 있는 프로세스로 정의됨)

  • 허용 가능한 성능 저하(성능 저하로 인해 사용자에게 표시되는 지연 시간은 발생하지 않음)

공급업체는 위에 설명된 기준에 따라 더 많은 구성요소에 관해 프로덕션 환경에서 MTE를 사용 설정하는 것이 좋습니다. 개발 중에 SYNC 모드를 사용하여 이러한 구성요소를 테스트해 수정된 버그를 쉽게 감지하고 ASYNC가 성능에 미치는 영향을 평가하는 것이 좋습니다. Android는 향후 예정된 하드웨어 디자인의 성능 특성에 따라 MTE가 사용 설정된 시스템 구성요소 목록을 확장할 계획입니다.

MTE 부트로더 지원

Android 13에서는 요청된 MTE 모드를 부트로더에 전달할 수 있도록 사용자 공간용 ABI를 도입했습니다. 이는 하드웨어를 지원하지만 기본적으로 MTE가 사용 설정된 상태로 제공되지 않는 기기에서 MTE를 사용 설정하거나 기본적으로 MTE가 사용 설정된 상태로 제공되는 기기에서 MTE를 사용 중지하는 데 사용할 수 있습니다.

부트로더 지원

memtag = (default_memtag && !(misc.memtag_mode & MISC_MEMTAG_MODE_MEMTAG_OFF)) ||
      misc.memtag_mode & MISC_MEMTAG_MODE_MEMTAG ||
      misc.memtag_mode & MISC_MEMTAG_MODE_MEMTAG_ONCE

memtag_kernel = misc.memtag_mode & MISC_MEMTAG_MODE_MEMTAG_KERNEL ||
      misc.memtag_mode & MISC_MEMTAG_MODE_MEMTAG_KERNEL_ONCE

default_memtag는 SKU의 기본 memtag 사용/사용 중지 설정입니다. memtag가 true인 경우 부트로더는 MTE 태그 예약을 설정하고 하위 예외 수준에서 태그 확인을 사용 설정하며 태그 예약 영역을 DT를 통해 커널에 전달합니다. memtag가 false인 경우 부트로더는 커널 명령줄에 arm64.nomte를 추가합니다.

memtag_kernel이 true인 경우 부트로더는 커널 명령줄에 kasan=on을 추가합니다.

부트로더는 부팅할 때마다 MISC_MEMTAG_MODE_MEMTAG_ONCE 및 MISC_MEMTAG_MODE_MEMTAG_KERNEL_ONCE를 삭제해야 합니다.

부트로더가 fastboot oem mte를 지원하면 다른 플래그를 보존하면서 MISC_MEMTAG_MODE_{MEMTAG, MEMTAG_ONLY, MEMTAG_OFF}를 (1, 0, 0)으로 설정하여 사용하고 (0, 0, 1)로 설정하여 사용 중지합니다.

사용자 공간 지원을 위한 mtectrl 바이너리를 빌드하도록 제품을 구성해야 합니다. 그런 다음 부트로더가 memtag 메시지를 지원한다고 시스템에 나타내도록 ro.arm64.memtag.bootctl_supported 시스템 속성을 설정합니다.

사용자 인터페이스

시스템 속성

고급 사용을 위해 시스템 속성 arm64.memtag.bootctl은 다음 값의 쉼표로 구분된 목록을 사용할 수 있습니다.

  • memtag: 사용자 공간 MTE를 지속적으로 사용 설정합니다(MISC_MEMTAG_MODE_MEMTAG 설정).

  • memtag-once: 사용자 공간 MTE를 한 번 사용 설정합니다(MISC_MEMTAG_MODE_MEMTAG_ONCE 설정).

  • memtag-kernel: 커널 공간 MTE를 사용 설정합니다(MISC_MEMTAG_MODE_MEMTAG_KERNEL 설정).

  • memtag-kernel-once: 커널 공간 MTE를 한 번 사용 설정합니다(MISC_MEMTAG_MODE_MEMTAG_KERNEL_ONCE).

  • memtag-off: MTE를 사용 중지합니다(MISC_MEMTAG_MODE_MEMTAG_OFF 설정)

새로운 설정을 적용하려면 시스템을 재부팅해야 합니다(부트로더에서 적용함).

MTE 보고서 이해하기

C/C++에서 malloc(), new() 연산자 또는 이와 유사한 함수에 대한 호출로부터 반환된 포인터는 할당 범위 내의 메모리에 액세스하는 데만 사용될 수 있으며, 메모리 할당이 활성화된 상태(해제 또는 삭제되지 않음)에서만 가능합니다. Android에서 MTE는 이 규칙의 위반을 감지하기 위해 사용되며, 비정상 종료 보고서에는 위반 내용이 'Buffer Overflow'/'Buffer Underflow'/'Use After Free' 오류로 표시됩니다.

MTE에는 동기('sync') 모드와 비동기('async') 모드가 있습니다. 동기 모드는 느리지만 더 정확한 진단 결과를 보여줍니다. 비동기 모드는 빠르지만 대략적인 진단 결과만 보여줄 수 있습니다. 진단 결과가 다소 다르기 때문에 두 가지 모드를 나누어 설명하겠습니다.

동기 모드 MTE

MTE의 동기('sync') 모드에서는 SIGSEGV가 code 9(SEGV_MTESERR) 메시지를 표시하며 다운됩니다.

pid: 13935, tid: 13935, name: sanitizer-statu  >>> sanitizer-status <<<
uid: 0
tagged_addr_ctrl: 000000000007fff3
signal 11 (SIGSEGV), code 9 (SEGV_MTESERR), fault addr 0x800007ae92853a0
Cause: [MTE]: Use After Free, 0 bytes into a 32-byte allocation at 0x7ae92853a0
x0  0000007cd94227cc  x1  0000007cd94227cc  x2  ffffffffffffffd0  x3  0000007fe81919c0
x4  0000007fe8191a10  x5  0000000000000004  x6  0000005400000051  x7  0000008700000021
x8  0800007ae92853a0  x9  0000000000000000  x10 0000007ae9285000  x11 0000000000000030
x12 000000000000000d  x13 0000007cd941c858  x14 0000000000000054  x15 0000000000000000
x16 0000007cd940c0c8  x17 0000007cd93a1030  x18 0000007cdcac6000  x19 0000007fe8191c78
x20 0000005800eee5c4  x21 0000007fe8191c90  x22 0000000000000002  x23 0000000000000000
x24 0000000000000000  x25 0000000000000000  x26 0000000000000000  x27 0000000000000000
x28 0000000000000000  x29 0000007fe8191b70
lr  0000005800eee0bc  sp  0000007fe8191b60  pc  0000005800eee0c0  pst 0000000060001000

backtrace:
      #00 pc 00000000000010c0  /system/bin/sanitizer-status (test_crash_malloc_uaf()+40) (BuildId: 953fc93301472d0b72709b2b9a9f6f30)
      #01 pc 00000000000014a4  /system/bin/sanitizer-status (test(void (*)())+132) (BuildId: 953fc93301472d0b72709b2b9a9f6f30)
      #02 pc 00000000000019cc  /system/bin/sanitizer-status (main+1032) (BuildId: 953fc93301472d0b72709b2b9a9f6f30)
      #03 pc 00000000000487d8  /apex/com.android.runtime/lib64/bionic/libc.so (__libc_init+96) (BuildId: 6ab39e35a2fae7efbe9a04e9bbb14331)

deallocated by thread 13935:
      #00 pc 000000000004643c  /apex/com.android.runtime/lib64/bionic/libc.so (scudo::Allocator<scudo::AndroidConfig, &(scudo_malloc_postinit)>::quarantineOrDeallocateChunk(scudo::Options, void*, scudo::Chunk::UnpackedHeader*, unsigned long)+688) (BuildId: 6ab39e35a2fae7efbe9a04e9bbb14331)
      #01 pc 00000000000421e4  /apex/com.android.runtime/lib64/bionic/libc.so (scudo::Allocator<scudo::AndroidConfig, &(scudo_malloc_postinit)>::deallocate(void*, scudo::Chunk::Origin, unsigned long, unsigned long)+212) (BuildId: 6ab39e35a2fae7efbe9a04e9bbb14331)
      #02 pc 00000000000010b8  /system/bin/sanitizer-status (test_crash_malloc_uaf()+32) (BuildId: 953fc93301472d0b72709b2b9a9f6f30)
      #03 pc 00000000000014a4  /system/bin/sanitizer-status (test(void (*)())+132) (BuildId: 953fc93301472d0b72709b2b9a9f6f30)

allocated by thread 13935:
      #00 pc 0000000000042020  /apex/com.android.runtime/lib64/bionic/libc.so (scudo::Allocator<scudo::AndroidConfig, &(scudo_malloc_postinit)>::allocate(unsigned long, scudo::Chunk::Origin, unsigned long, bool)+1300) (BuildId: 6ab39e35a2fae7efbe9a04e9bbb14331)
      #01 pc 0000000000042394  /apex/com.android.runtime/lib64/bionic/libc.so (scudo_malloc+36) (BuildId: 6ab39e35a2fae7efbe9a04e9bbb14331)
      #02 pc 000000000003cc9c  /apex/com.android.runtime/lib64/bionic/libc.so (malloc+36) (BuildId: 6ab39e35a2fae7efbe9a04e9bbb14331)
      #03 pc 00000000000010ac  /system/bin/sanitizer-status (test_crash_malloc_uaf()+20) (BuildId: 953fc93301472d0b72709b2b9a9f6f30)
      #04 pc 00000000000014a4  /system/bin/sanitizer-status (test(void (*)())+132) (BuildId: 953fc93301472d0b72709b2b9a9f6f30)

MTE 비정상 종료 보고서에는 문제가 감지된 지점의 레지스터 덤프와 backtrace 정보가 있습니다. MTE가 감지한 오류의 'Cause:' 행에는 위 예와 같이 '[MTE]' 표시와 자세한 내용이 나타납니다. 이때 감지된 오류 유형은 'Use after free'이며 '0 bytes into a 32-byte allocation at 0x7ae92853a0'는 할당의 크기와 주소, 액세스를 시도한 할당에 관한 오프셋을 나타냅니다.

MTE 비정상 종료 보고서에는 감지 지점 외의 추가적인 backtrace 정보도 포함됩니다.

'Use After Free' 오류의 경우 크래시 덤프에 'deallocated by', 'allocated by' 섹션이 추가되며, 이러한 섹션은 메모리 할당 해제 시점(사용 전)과 이전 할당 시점의 스택 트레이스 정보를 보여줍니다. 어떤 스레드에 의해 할당/할당 해제되었는지도 보여줍니다. 간단한 이번 사례에서는 감지 스레드, 할당 스레드, 할당 해제 스레드 모두 동일하지만 더 복잡한 실제 사례에서는 그렇지 않을 수 있습니다. 스레드가 다르다는 것을 숙지하면 동시 실행 관련 버그를 찾는 데 큰 도움이 됩니다.

'Buffer Overflow', 'Buffer Underflow' 오류는 'allocated by' 스택 트레이스만 추가로 보여줍니다. 정의에 따르면 아직 할당 해제되지 않았기 때문입니다. 해제되었다면 'Use After Free' 오류로 나올 것입니다.

Cause: [MTE]: Buffer Overflow, 0 bytes right of a 32-byte allocation at 0x7ae92853a0
[...]
backtrace:
[...]
allocated by thread 13949:

단어 'right'는 할당 끝에서 몇 바이트를 지나 잘못된 액세스가 발생했는지를 뜻합니다. 언더플로의 경우 'left'라고 표시되며 이는 할당 시작 전에 잘못된 액세스가 발생한 바이트 수를 뜻합니다.

후보 원인

SEGV_MTESERR 보고서에 다음 행이 포함되는 경우가 있습니다.

Note: multiple potential causes for this crash were detected, listing them in decreasing order of likelihood.

이는 오류 출처로 유력한 후보가 여러 개 있는데 어떤 원인이 실제 원인인지 알 수 없는 경우에 발생합니다. 사용자의 분석을 위해 실제 원인일 가능성 순으로 후보가 3개까지 표시됩니다.

signal 11 (SIGSEGV), code 9 (SEGV_MTESERR), fault addr 0x400007b43063db5
backtrace:
    [stack...]

Note: multiple potential causes for this crash were detected, listing them in decreasing order of probability.

Cause: [MTE]: Use After Free, 5 bytes into a 10-byte allocation at 0x7b43063db0
deallocated by thread 6663:
    [stack...]
allocated by thread 6663:
    [stack...]

Cause: [MTE]: Use After Free, 5 bytes into a 6-byte allocation at 0x7b43063db0
deallocated by thread 6663:
    [stack...]

allocated by thread 6663:
    [stack...]

위 예시는 잘못된 메모리 액세스의 의도한 대상이었을 수 있는 동일한 메모리 주소에서 감지된 두 건의 최근 할당을 보여줍니다. 이는 할당에서 사용 가능한 메모리를 재사용할 때 발생할 수 있습니다. 예를 들어 new, free, new, free, new, free, access와 같은 시퀀스가 있다면 일어날 수 있습니다. 최근 할당 기록이 먼저 나타납니다.

상세 원인 판단 휴리스틱

비정상 종료의 'Cause' 행은 액세스된 포인터의 출처인 메모리 할당을 보여주어야 합니다. 안타깝지만 MTE 하드웨어로는 일치하지 않은 태그를 포함하는 포인터를 할당으로 변환할 수 없습니다. SEGV_MTESERR 비정상 종료의 원인을 찾기 위해 Android에서 다음 데이터를 분석합니다.

  • 오류 주소(포인터 태그 포함).

  • 스택 트레이스를 포함한 힙 할당 및 메모리 태그의 최근 목록

  • 현재 활성 상태인 주변 할당과 할당의 메모리 태그

메모리 태그와 오류 주소 태그가 일치하는 오류 주소에서 최근에 할당 해제된 메모리가 'Use After Free' 오류의 원인일 수 있습니다.

메모리 태그와 오류 주소 태그가 일치하는 주변 활성 메모리가 'Buffer Overflow'(또는 'Buffer Underflow')의 원인일 수 있습니다.

시공간상으로 오류와 이웃해 있는 할당은 멀리 있는 할당보다 오류의 원인일 가능성이 큽니다.

할당 해제된 메모리는 재사용되는 경우가 많고 태그 값의 종류가 적으므로(16가지 미만) 오류 원인의 후보는 여러 개가 발견될 수 있으며 실제 원인을 자동으로 찾는 방법은 없습니다. 이러한 이유로 MTE 보고서에는 잠재적인 원인이 여러 개 표시될 수 있습니다.

앱 개발자는 오류를 일으켰을 가능성이 가장 큰 원인부터 살펴보는 것이 좋습니다. 스택 트레이스를 기준으로 하면 관련 없는 원인을 쉽게 필터링할 수 있습니다.

비동기 모드 MTE

MTE의 비동기('async') 모드에서는 SIGSEGV가 code 8(SEGV_MTEAERR) 메시지를 표시하며 다운됩니다.

SEGV_MTEAERR 오류는 프로그램이 잘못된 메모리 액세스를 실행하자마자 발생하지 않습니다. 해당 이벤트 발생 직후 문제가 감지되며 이 시점에 프로그램이 종료됩니다. 일반적으로 다음 시스템 호출 시 프로그램이 종료되지만 타이머 중단과 같이 userspace-to-kernel 전환 시점에 발생할 수도 있습니다.

SEGV_MTEAERR 오류는 메모리 주소를 저장하지 않습니다(항상 '-------'로 표시). 이 오류의 backtrace는 조건이 감지된 순간(즉, 다음 시스템 호출이나 기타 컨텍스트 전환)에 발생하며, 잘못된 액세스가 수행될 때는 발생하지 않습니다.

즉, 비동기 모드 MTE 비정상 종료 보고서의 '기본' backtrace는 일반적으로 관련성이 없습니다. 따라서 비동기 모드 오류는 동기 모드 오류보다 디버그하기 훨씬 어렵습니다. 이러한 오류는 스레드 주변 코드에서의 메모리 버그 유무를 알려주는 것으로 이해할 수 있습니다. Tombstone 파일 하단의 로그를 통해 실제 발생 상황에 관한 단서를 얻을 수 있습니다. 또는 동기 모드에서 오류를 재현하고 동기 모드에서 제공하는 상세 진단 결과를 사용하면 됩니다.

고급 주제

메모리 태깅이란 힙 할당마다 4비트(0..15) 태그 값을 임의로 할당하는 것을 말합니다. 이 값은 할당된 힙 메모리에 대응하는 특수 메타데이터 영역에 저장됩니다. malloc(), new() 연산자 등 함수에서 반환된 힙 포인터의 최상위 바이트에 동일한 값이 할당됩니다.

프로세스에서 태그 검사가 사용 설정된 경우 CPU는 포인터의 최상위 바이트를 각 메모리 액세스의 메모리 태그와 자동으로 비교합니다. 태그가 일치하지 않으면 CPU에서 오류 신호를 보내며 비정상 종료가 발생합니다.

가능한 태그 값이 제한되어 있으므로 이 방법은 확률의 영향을 받습니다. 특정 포인터가 액세스하면 안 되는 메모리 위치(예: 범위 밖, 할당 해제 후('댕글링 포인터'))는 다른 태그 값을 가지며 비정상 종료를 일으킬 가능성이 높습니다. 버그 발생을 하나도 감지하지 못할 확률은 약 7%입니다. 태그 값은 무작위로 할당되므로 다음으로 발생하는 버그를 감지할 확률은 약 93%입니다.

태그 값은 아래 강조 표시된 것처럼 오류 주소 필드와 레지스터 덤프에서 확인할 수 있습니다. 이 섹션을 통해 태그가 정상적으로 설정되어 있는지 검토할 수 있고 동일한 태그 값을 갖는 다른 주변 메모리 할당도 확인할 수 있습니다. 이러한 메모리 할당은 보고서에서 나열된 할당과 함께 오류의 원인일 수 있습니다. 이는 개발자보다는 MTE나 하위 시스템 구성요소를 구현하려는 작업자에게 도움이 될 것으로 예상됩니다.

signal 11 (SIGSEGV), code 9 (SEGV_MTESERR), fault addr 0x0800007ae92853a0
Cause: [MTE]: Use After Free, 0 bytes into a 32-byte allocation at 0x7ae92853a0
    x0  0000007cd94227cc  x1  0000007cd94227cc  x2  ffffffffffffffd0  x3  0000007fe81919c0
    x4  0000007fe8191a10  x5  0000000000000004  x6  0000005400000051  x7  0000008700000021
    x8  0800007ae92853a0  x9  0000000000000000  x10 0000007ae9285000  x11 0000000000000030
    x12 000000000000000d  x13 0000007cd941c858  x14 0000000000000054  x15 0000000000000000
    x16 0000007cd940c0c8  x17 0000007cd93a1030  x18 0000007cdcac6000  x19 0000007fe8191c78
    x20 0000005800eee5c4  x21 0000007fe8191c90  x22 0000000000000002  x23 0000000000000000
    x24 0000000000000000  x25 0000000000000000  x26 0000000000000000  x27 0000000000000000
    x28 0000000000000000  x29 0000007fe8191b70
    lr  0000005800eee0bc  sp  0000007fe8191b60  pc  0000005800eee0c0  pst 0000000060001000

비정상 종료 보고서에는 따로 'Memory tags' 섹션도 표시되는데, 이를 통해 오류 주소 주변의 메모리 태그 정보를 확인할 수 있습니다. 아래 예시에서는 포인터 태그 '4'가 메모리 태그 'a'와 일치하지 않습니다.

Memory tags around the fault address (0x0400007b43063db5), one tag per 16 bytes:
  0x7b43063500: 0  f  0  2  0  f  0  a  0  7  0  8  0  7  0  e
  0x7b43063600: 0  9  0  8  0  5  0  e  0  f  0  c  0  f  0  4
  0x7b43063700: 0  b  0  c  0  b  0  2  0  1  0  4  0  7  0  8
  0x7b43063800: 0  b  0  c  0  3  0  a  0  3  0  6  0  b  0  a
  0x7b43063900: 0  3  0  4  0  f  0  c  0  3  0  e  0  0  0  c
  0x7b43063a00: 0  3  0  2  0  1  0  8  0  9  0  4  0  3  0  4
  0x7b43063b00: 0  5  0  2  0  5  0  a  0  d  0  6  0  d  0  2
  0x7b43063c00: 0  3  0  e  0  f  0  a  0  0  0  0  0  0  0  4
=>0x7b43063d00: 0  0  0  a  0  0  0  e  0  d  0 [a] 0  f  0  e
  0x7b43063e00: 0  7  0  c  0  9  0  a  0  d  0  2  0  0  0  c
  0x7b43063f00: 0  0  0  6  0  b  0  8  0  3  0  0  0  5  0  e
  0x7b43064000: 0  d  0  2  0  7  0  a  0  7  0  a  0  d  0  8
  0x7b43064100: 0  b  0  2  0  b  0  4  0  1  0  6  0  d  0  4
  0x7b43064200: 0  1  0  6  0  f  0  2  0  f  0  6  0  5  0  c
  0x7b43064300: 0  1  0  4  0  d  0  6  0  f  0  e  0  1  0  8
  0x7b43064400: 0  f  0  4  0  3  0  2  0  1  0  2  0  5  0  6

모든 레지스터 값 주변의 메모리 콘텐츠를 보여주는 Tombstone 섹션에서는 태그 값도 표시됩니다.

memory near x10 ([anon:scudo:primary]):
0000007b4304a000 7e82000000008101 000003e9ce8b53a0  .......~.S......
0700007b4304a010 0000200000006001 0000000000000000  .`... ..........
0000007b4304a020 7c03000000010101 000003e97c61071e  .......|..a|....
0200007b4304a030 0c00007b4304a270 0000007ddc4fedf8  p..C{.....O.}...
0000007b4304a040 84e6000000008101 000003e906f7a9da  ................
0300007b4304a050 ffffffff00000042 0000000000000000  B...............
0000007b4304a060 8667000000010101 000003e9ea858f9e  ......g.........
0400007b4304a070 0000000100000001 0000000200000002  ................
0000007b4304a080 f5f8000000010101 000003e98a13108b  ................
0300007b4304a090 0000007dd327c420 0600007b4304a2b0   .'.}......C{...
0000007b4304a0a0 88ca000000010101 000003e93e5e5ac5  .........Z^>....
0a00007b4304a0b0 0000007dcc4bc500 0300007b7304cb10  ..K.}......s{...
0000007b4304a0c0 0f9c000000010101 000003e9e1602280  ........."`.....
0900007b4304a0d0 0000007dd327c780 0700007b7304e2d0  ..'.}......s{...
0000007b4304a0e0 0d1d000000008101 000003e906083603  .........6......
0a00007b4304a0f0 0000007dd327c3b8 0000000000000000  ..'.}.......

다음 섹션에서는 시스템 프로세스 및 애플리케이션에 MTE를 사용 설정하는 방법을 설명합니다. MTE는 아래 옵션 중 하나가 특정 프로세스에 설정되어 있지 않으면(에서 MTE가 사용 설정된 구성요소 참고) 기본적으로 사용 중지됩니다.

1. 특정 프로젝트의 Android.bp()에서 MTE 사용 설정:

예: )와 비슷한 용도

지정하지 않으면 MTE가 기본적으로 사용 중지되어 있지만 MTE를 사용하려는 앱은 AndroidManifest.xml의 <application> 또는 <process> 태그 아래에서 를 설정하면 사용할 수 있습니다.

실험의 경우 을 사용하여 매니페스트에서 어떤 값도 지정하지 않는(또는 default 지정) 애플리케이션의 memtagMode 속성 기본값을 설정할 수 있습니다. 이는 전역 설정 메뉴의 System > Advanced > Developer options > App Compatibility Changes에서 확인할 수 있습니다. NATIVE_MEMTAG_ASYNC 또는 NATIVE_MEMTAG_SYNC를 설정하면 특정 애플리케이션에서 MTE가 사용 설정됩니다. 또는 다음과 같이 am 명령어를 사용하여 설정할 수 있습니다.

빌드 시스템의 변수와 마찬가지로 SANITIZE_TARGET은 환경 변수 또는 make 설정(예: 에서)으로 사용할 수 있습니다. 이렇게 하면 모든 네이티브 프로세스에 MTE가 사용 설정되지만 애플리케이션(zygote64에서 포크됨)에는 사용 설정되지 않으며 이 경우 MTE는 의 안내를 따라 사용 설정할 수 있습니다.

PSTATE.TCO 하드웨어 레지스터를 설정하면 태그 검사()를 일시적으로 억제할 수 있습니다. 예를 들어 태그 콘텐츠를 알 수 없는 메모리 범위를 복사하거나 핫 루프에서 성능 병목 현상을 처리하는 경우입니다.

M_HEAP_TAGGING_LEVEL_SYNC를 사용하면 시스템 비정상 종료 핸들러가 할당 및 할당 해제 스택 트레이스와 같은 추가 정보를 제공합니다. 이 기능을 사용하려면 태그 비트에 액세스해야 하며, 신호 핸들러를 설정할 때 플래그를 전달하여 기능을 사용 설정해야 합니다. 자체 신호 핸들러를 설정하고 알 수 없는 비정상 종료를 시스템에 위임하는 모든 프로그램은 동일한 작업을 실행하는 것이 좋습니다.

참고: 부팅 시간 플래그는 MTE를 지원하는 하드웨어에서 MTE 지원 KASAN에서만 작동합니다. 자세한 내용은 업스트림 KASAN 문서()를 참고하세요.

브링업, 개발, 테스트 중에는 SYNC 모드를 사용하는 것이 좋습니다. 이 옵션은 또는 을 통해 모든 프로세스에서 전역적으로 사용 설정해야 합니다. SYNC 모드에서는 버그가 개발 프로세스 초반에 감지되고 코드베이스가 빠르게 안정화되므로 프로덕션 후반에 버그를 감지하는 데 비용을 쓰지 않아도 됩니다.

개발자는 /data/tombstones, logcat을 확인하거나 공급업체 파이프라인에서 최종 사용자 버그를 모니터링하여 비정상 종료가 있는지 확인해야 합니다. Android 네이티브 코드 디버깅에 관한 자세한 내용은 정보를 참고하세요.

신뢰할 수 없는 입력 처리()

이 ABI를 지원하려면 부트로더가 misc 파티션에서 misc_memtag_message(에 정의됨)를 읽어야 합니다. 유효한 misc_memtag_message가 있으면(MISC_VIRTUAL_AB_MAGIC_HEADER가 일치하고 버전 번호가 지원됨) 부트로더가 계산합니다.

ro.arm64.memtag.bootctl_supported 속성이 설정되면 개발자 옵션 메뉴의 버튼을 사용하여, MTE가 사용 설정된 상태에서 사용자가 한 번 재부팅할 수 있습니다. 타겟층은 MTE로 앱을 테스트하려는 앱 개발자입니다.

SIGSEGV가 다운되면서 표시되는 코드 9(SEGV_MTESERR), 코드 8(SEGV_MTEAERR)은 메모리 태그 오류입니다. 은 Android 12 이상에서 지원되는 Armv9 기능입니다. MTE는 태그된 메모리의 하드웨어 구현입니다. 를 감지하고 완화하는 세분화된 메모리 보호 기능이 있습니다.

출처 :


  sanitize: {
  memtag_heap: true,
  }

  sanitize: {
  memtag_heap: true,
  diag: {
  memtag_heap: true,
  },
  }
하드웨어 구현
Memory Tagging Extension
Android 할당자
아래
예
PRODUCT_CFI_INCLUDE_PATHS
android:memtagMode
호환성 변경사항
product.mk
파일
위
예
SA_EXPOSE_TAGBITS
https://www.kernel.org/doc/html/latest/dev-tools/kasan.html
환경 변수
빌드 시스템
DropboxManager
여기
2의 법칙
bootloader_message.h
Memory Tagging Extension(MTE)
메모리 안전 버그
바로가기
[NHN Cloud] 2022년 NHN Cloud 교육 정보 공유NHN Cloud
NHN Cloud 정보 사이트
Unix 시스템 취약점 진단 분석 평가 방법System Security Vulnerability
취약점 진단 분석 평가 방법 사이트
Logo
Logo
MTE 개발자 옵션 스크린샷