<html devsite><head>
    <title>2018 Android 보안 게시판</title>
    <meta name="project_path" value="/_project.yaml"/>
    <meta name="book_path" value="/_book.yaml"/>
  </head>
  <body>
  <!--
      Copyright 2018 The Android Open Source Project

      Licensed under the Apache License, Version 2.0 (the "License");
      you may not use this file except in compliance with the License.
      You may obtain a copy of the License at

          http://www.apache.org/licenses/LICENSE-2.0

      Unless required by applicable law or agreed to in writing, software
      distributed under the License is distributed on an "AS IS" BASIS,
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
      See the License for the specific language governing permissions and
      limitations under the License.
  -->

<p>이 페이지에는 사용 가능한 2018 Android 보안 게시판이 모두 포함되어 있습니다. 게시판의
전체 목록을 확인하려면 <a href="/security/bulletin/index.html">Android 보안 게시판</a> 홈페이지를 참조하세요.</p>

<table>
  <colgroup><col width="15%" />
  <col width="49%" />
  <col width="17%" />
  <col width="19%" />
 </colgroup><tbody><tr>
    <th>게시판</th>
    <th>언어</th>
    <th>게시일</th>
    <th>보안 패치 수준</th>
 </tr>
 <tr>
   <td><a href="/security/bulletin/2018-03-01.html">2018년 3월</a></td>
   <td>출시 예정
     <!--
     <a href="/security/bulletin/2018-03-01.html">English</a>&nbsp;/
     <a href="/security/bulletin/2018-03-01.html?hl=ja">日本語</a>&nbsp;/
     <a href="/security/bulletin/2018-03-01.html?hl=ko">한국어</a>&nbsp;/
     <a href="/security/bulletin/2018-03-01.html?hl=ru">ру́сский</a>&nbsp;/
     <a href="/security/bulletin/2018-03-01.html?hl=zh-cn">中文&nbsp;(中国)</a>&nbsp;/
     <a href="/security/bulletin/2018-03-01.html?hl=zh-tw">中文&nbsp;(台灣)</a>
     -->
   </td>
   <td>2018년 3월</td>
   <td>2018-03-01<br />
       2018-03-05</td>
 </tr>
 <tr>
   <td><a href="/security/bulletin/2018-02-01.html">2018년 2월</a></td>
   <td>
     <a href="/security/bulletin/2018-02-01.html?hl=ko">한국어</a> /
     <a href="/security/bulletin/2018-02-01.html?hl=ja">日本語</a> /
     <a href="/security/bulletin/2018-02-01.html">English</a> /
     <a href="/security/bulletin/2018-02-01.html?hl=ru">ру́сский</a> /
     <a href="/security/bulletin/2018-02-01.html?hl=zh-cn">中文 (中国)</a> /
     <a href="/security/bulletin/2018-02-01.html?hl=zh-tw">中文 (台灣)</a>
   </td>
   <td>2018년 2월</td>
   <td>2018-02-01<br />
       2018-02-05</td>
 </tr>
 <tr>
   <td><a href="/security/bulletin/2018-01-01.html">2018년 1월</a></td>
   <td>
     <a href="/security/bulletin/2018-01-01.html?hl=ko">한국어</a> /
     <a href="/security/bulletin/2018-01-01.html?hl=ja">日本語</a> /
     <a href="/security/bulletin/2018-01-01.html">English</a> /
     <a href="/security/bulletin/2018-01-01.html?hl=ru">ру́сский</a> /
     <a href="/security/bulletin/2018-01-01.html?hl=zh-cn">中文 (中国)</a> /
     <a href="/security/bulletin/2018-01-01.html?hl=zh-tw">中文 (台灣)</a>
   </td>
   <td>2018년 1월</td>
   <td>2018-01-01<br />
       2018-01-05</td>
 </tr>
</tbody></table>

</body></html>