OpenSSLのHeartBleed脆弱性のシスコ機器対応状況(CVE-2014-0160)

IT業界に吹き荒れる春の嵐のような、OpenSSLの脆弱性HeartBleed。

簡単に言うと、SSLで通信している相手のメモリを遡って傍受することが出来てしまうため、
シークレットキーなどの情報を抜き取られてしまう可能性がある。
OpenSSL 1.0.1 (~1.0.1f)系列の利用がこの脆弱性にあたっており、
対応には2014/04/07にリリースされたOpenSSL 1.0.1gにアップデートするしかない。
各種サーバやサービス等の対応状況はpiyokangoさんのまとめ等を参照のこと。
OpenSSLの脆弱性(CVE-2014-0160)関連の情報をまとめてみた - piyolog

さて、Cisco製のネットワーク機器での対応状況は、CiscoのSecurity Advisoryに記載があり、随時アップデートされている。
OpenSSL Heartbeat Extension Vulnerability in Multiple Cisco Products

自分の管理しているシスコ機器が該当しているかどうかは、上記Security Advisoryの
「Affected Products」-> 「Vulnerable Products」を確認する。

※「Affected Products」を開くと機器の一覧が出てくるが、
これらは「The following Cisco products are currently under investigation」とのことで、
つまり「現在調査中の機器一覧」であるため、まだ脆弱性に該当しているかどうかは判明していない。


ひとまず、シスコのIOS, IOS XR, CatOSはすべて影響対象外とのことで、
稼働中の多くのルータ・スイッチには影響が無く一安心。
ただしIOS XEは、バージョン3.11S以降(15.4(2)S)が該当しており、Bug ID「CSCuo19730」の対応状況を追いかける必要がある。


なおこのSecurity Advisoryは日々更新されているので最新情報は本家のURLを確認して欲しいのだが、
2014年4月14日11時(JST)時点での、HeartBleed脆弱性への該当製品は以下の通り。

                          • -

HeartBleed脆弱性の影響対象のCisco機器(2014/4/14 11:00JST時点)

                          • -

iPhone用のAnyConnectは脆弱性の影響対象とされているが、
App Storeに掲載されているリリース3.0.09353で既に改修済みの模様。

Cisco AnyConnect Secure Mobility Client for iOS [CSCuo17488]
Cisco Desktop Collaboration Experience DX650
Cisco Unified 7800 series IP Phones
Cisco Unified 8961 IP Phone
Cisco Unified 9951 IP Phone
Cisco Unified 9971 IP Phone
Cisco IOS XE [CSCuo19730]
Cisco Unified Communications Manager (UCM) 10.0
Cisco Universal Small Cell 5000 Series running V3.4.2.x software
Cisco Universal Small Cell 7000 Series running V3.4.2.x software
Small Cell factory recovery root filesystem V2.99.4 or later
Cisco MS200X Ethernet Access Switch
Cisco Mobility Service Engine (MSE)
Cisco TelePresence Video Communication Server (VCS) [CSCuo16472]
Cisco TelePresence Conductor
Cisco TelePresence Supervisor MSE 8050
Cisco TelePresence Server 8710, 7010
Cisco TelePresence Server on Multiparty Media 310, 320
Cisco TelePresence Server on Virtual Machine
Cisco TelePresence ISDN Gateway 8321 and 3201 Series
Cisco TelePresence Serial Gateway Series
Cisco TelePresence IP Gateway Series
Cisco WebEx Meetings Server versions 2.x [CSCuo17528]
Cisco Security Manager [CSCuo19265]
FireAMP Private Cloud virtual appliance

                          • -

HeartBleed脆弱性の影響対象だったが既に対処がされたCiscoのサービス(2014/4/14 11:00JST時点)

                          • -

Cisco Registered Envelope Service (CRES)
Cisco Webex Messenger Service
Cisco USC Invicta Series Autosupport Portal

                          • -

HeartBleed脆弱性の影響を受けないCisco機器(2014/4/14 11:00JST時点)

                          • -

Cisco IOS
Cisco IOS XR
Cisco Catalyst Operating System (CatOS)
Cisco MDS Switches
Cisco Nexus 3000 Series Switches
Cisco Nexus 5000 Series Switches
Cisco Nexus 6000 Series Switches
Cisco Nexus 7000 Series Switches
Cisco ASR 5000 Series
Cisco Adaptive Security Appliance (ASA) Software
Cisco ACE Application Control Engine Module (ACE10, ACE20, ACE30)
Cisco ACE Application Control Engine Appliance
Cisco AnyConnect Secure Mobility Client for desktop platforms
Cisco AnyConnect Secure Mobility Client for Android
Cisco CSS 11500 Series Content Services Switches
Cisco Unified 7900 series IP Phones
Cisco Unified 6900 series IP Phones
Cisco Unified 3900 series IP Phones
Cisco Unified 8941 IP Phone
Cisco Unified 8945 IP Phone
Cisco Unified IP Conference Phone 8831
Cisco IP Communicator
Cisco Unified Communications Manager (UCM) 9.1(2) and earlier
Cisco Unified Communications Domain Manager
Cisco Unified Business Attendant Console
Cisco Unified Department Attendant Console
Cisco Unified Enterprise Attendant Console
Cisco Identity Service Engine (ISE)
Cisco Secure Access Control Server (ACS)
Cisco Wireless Lan Controller (WLC)
Cisco Wireless Control System (WCS)
Cisco Web Security Appliance (WSA)
Cisco Content Security Management Appliance (SMA)
Cisco Email Security Appliance (ESA)
Cisco IronPort Encryption Appliance (IEA)
Cisco UCS Central
Cisco UCS Fabric Interconnects
Cisco UCS B-Series (Blade) Servers
Cisco UCS C-Series (Stand alone Rack) Servers
Cisco RV315W Wireless-N VPN Router
Cisco RV215W Wireless-N VPN Router
Cisco RV220W Wireless-N VPN Router
Cisco RV180W Wireless-N VPN Router
Cisco RV120W Wireless-N VPN Router
Cisco RV110W Wireless-N VPN Router
Cisco CVR100W Wireless-N VPN Router
Cisco RV325 VPN Router
Cisco RV320 VPN Router
Cisco RV180 VPN Router
Cisco RV082 VPN Router
Cisco RV042 VPN Router
Cisco RV016 VPN Router
Cisco 200 Series Smart Switches
Cisco 300 Series Managed Switches
Cisco 500 Series Stackable Managed Switches
Cisco ESW2 Series Advanced Switches
Cisco WAP121 Wireless-N Access Point
Cisco WAP321 Wireless Access Point
Cisco WAP551/561 Wireless-N Access Point
Cisco WAP4410N Wireless-N Access Point
Cisco Meraki Cloud Managed Indoor Access Points
Cisco Meraki Cloud-Managed Outdoor Access Points
Cisco Meraki MX Security Appliances
Cisco Meraki MS Access Switches
Cisco WebEx Meetings Server versions 1.x
Cisco WebEx Social
Cisco Application and Content Networking System (ACNS) Software
Cisco Wide Area Application Services (WAAS) Software
Cisco ACE Global Site Selector Appliances (GSS)
Cisco Prime Network Analysis Module (NAM)
Cisco NetFlow Generation 3000 Series Appliances
Cisco Prime Infrastructure
Cisco Content Switching Module with SSL (CSM-S)
Cisco SSL Services Module (SSLM)
Cisco Intelligent Automation for Cloud
Cisco D9854/D9854-I Advanced Program Receiver
Cisco D9824 Advanced Multi Decryption Receiver
Cisco D9858 Advanced Receiver Transcoder
Cisco D9859 Advanced Receiver Transcoder
Cisco Application Networking Manager (ANM)
Cisco DPC/EPC2100 Cable Modem
Cisco DPC/EPC2505 Cable Modem
Cisco DPC/EPC2607 Cable Modem
Cisco DPC3000/EPC3000 Cable Modem
Cisco DPC3008/EPC3008 Cable Modem
Cisco DPC/EPC3010 Cable Modem
Cisco DPQ/EPQ2160 DOCSIS 2.0 Cable Modem
Cisco DPX100/120 Cable Modem
Cisco DPX110 Cable Modem
Cisco DPX130 Cable Modem
Cisco DPX/EPX2100 Cable Modem
Cisco Model DPC2425R2 and EPC2425R2 Wireless Residential Gateway with Digital Voice
Cisco Model DPC2420R2 and EPC2420R2 Wireless Residential Gateway withDigital Voice
Cisco DPC/EPC 2202 VoIP Cable Modem
Cisco DPC/EPC 2203 VoIP Cable Modem
Cisco DPC/EPC 3208 VoIP Cable Modem
Cisco DPC/EPC3212 VoIP Cable Modem
Cisco DPQ3212 VoIP Cable Modem
Cisco DPQ2202 VoIP Cable Modem
Cisco DPX2213 VoIP Cable Modem
Cisco DPX213 VoIP Cable Modem
Cisco DPX/EPX 2203 VoIP Cable Modem
Cisco DPX/EPX 2203C VoIP Cable Modem
Cisco DPC2320 and EPC2320 Wireless Residential Gateway
Cisco DPC2325R2 and EPC2325R2 Wireless Residential Gateway
Cisco DPC3827 and EPC3827 Wireless Residential Gateway
Cisco DPC2420 and EPC2420 Wireless Residential Gateway with Embedded DigitalVoice Adapter
Cisco DPC3825 and EPC3825 8x4 DOCSIS 3.0 Wireless Residential Gateway
Cisco DPC3828 and EPC3828 DOCSIS/EuroDOCSIS 3.0 8x4 Wireless Residential Gateway
Cisco DPC3925 and EPC3925 8x4 DOCSIS 3.0 Wireless Residential Gateway with EDVA
Cisco DPC3928 and EPC3928 DOCSIS/EuroDOCSIS 3.0 8x4 Wireless Residential Gateway with Embedded Digital Voice Adapter
Cisco DPC3939 DOCSIS 3.0 16x4 Wireless Residential Voice Gateway
Cisco DPC/EPC2325 Residential Gateway with Wireless Access Point
Cisco DPC/EPC2425 Wireless Residential Gateway with Embedded Digital VoiceAdapter
Cisco DPC/EPC2434 VoIP Wireless Home Gateway
Cisco DPQ2425 Wireless Residential Gateway with Digital Voice Adapter
Cisco DPQ3925 8x4 DOCSIS 3.0 Wireless Residential Gateway with EDVA
Cisco DPR362 Cable Modem and Router
Cisco DPR/EPR2320, DPR2325 Cable Modem with Wireless Access Point

                          • -

HeartBleed脆弱性の影響を受けないCiscoのサービス(2014/4/14 11:00JST時点)

                          • -

Cisco Meraki Dashboard
Cisco WebEx Meeting Center
Cisco WebEx Support Center
Cisco WebEx Training Center
Cisco WebEx Event Center
Cisco Universal Small Cell CloudBase
Cisco Cloud Web Security

上記以外の製品はまだ調査中とのこと。
随時、本家Ciscoのサイトを確認しよう。
http://tools.cisco.com/security/center/content/CiscoSecurityAdvisory/cisco-sa-20140409-heartbleed

Mac OS X でPingに応答する設定

MacPing応答するように設定するには

システム環境設定 > セキュリティとプライバシー > ファイアウォール
で[ファイアウォールオプション]をクリック。
なお、設定を変更するには、左下の鍵マークをクリックし、システムのパスワードを入力する必要がある

ファイアウォールオプションで、
「ステルスモードを有効にする」のチェックを外す。

初めてのPython #4 モジュール

Pythonでmoduleを利用すると、あらかじめ定義された様々な関数が利用できる。
数学的な計算が定義されたmathモジュール、ランダム関数が定義されたrandomモジュールなど。
それぞれ、プログラムの冒頭でmoduleをimportすると利用できる。

# mathモジュールを利用してπを表示する。

import math
print math.pi

出力

3.14159265359

# ランダムモジュールrandom.randrange([start], stop[, step])を利用し、0から9までの乱数を表示する。

import random
print random.randrange(0,10)

出力

3

ちなみに利用するrandom関数によって出力結果が違う。詳しくはドキュメントを参照。
例)
random.randint(0,10)は0〜10までの数字
random.randrange(0,10)は0〜9までの10個の数字

初めてのPython #3 関数

function、関数を作成すればいつでも使い回せる。
関数はオブジェクトとして利用でき、中で何が行われているか意識しなくてよい。

# functionのヘッダはdefを記載。ヘッダの後には:コロンで締める。
# このあとに続くのがbodyのコードとなる
# functionのボディはインデントし、returnで値を返す

例1)
#三角形の面積を求める関数を作成しよう。

def triangle_area(base, height):     # ヘッダ。コロン:で締める
    area = (1.0 / 2) * base * height # ボディ。インデントする
    return area                      # ボディ。最後にoutputの値を返す

# fuctionを定義したあとでそれをコールする

a1 = triangle_area(3, 8)
print a1
a2 = triangle_area(14, 2)
print a2

出力

12.0
14.0

例2)
# 温度の華氏を摂氏に変換する関数

def fahrenheit2celsius(fahrenheit):
    celsius = (5.0 / 9) * (fahrenheit - 32)
    return celsius

# 摂氏化し変換関数を呼び出して利用してみる

c1 = fahrenheit2celsius(32)
c2 = fahrenheit2celsius(212)
print c1, c2

出力

0.0 100.0

# 先ほどの華氏摂氏変換関数を利用し、華氏をケルビン(K)に変換する関数を作成する
# converts fahrenheit to kelvin

def fahrenheit2kelvin(fahrenheit):
    celsius = fahrenheit2celsius(fahrenheit)
    kelvin = celsius + 273.15
    return kelvin

# 華氏をケルビンに変換する関数を呼び出す

k1 = fahrenheit2kelvin(32)
k2 = fahrenheit2kelvin(212)
print k1, k2

出力

273.15 373.15

例3)
# hello()でインプット無しアウトプット(return)無しのfunctionを作る。
# 何も入力せず"hello world"を表示させる

def hello():
    print "Hello, world!"

# hello world表示関数を呼び出す

hello()

出力

Hello, world!

# return、返り値が無いhello world表示関数を呼び出すとどうなるか実験

h = hello()
print h

出力

Hello, world!
None

# returnするものが何も無かったからNoneと返して来た。
# つまり、関数の最後の行には "return None"が暗黙的に省略されている

初めてのPython #2 変数

# 変数は数値、アンダースコアで構成する
# 変数は文字列またはアンダースコアから始める
# したがって、akb, AKB48, akb_48は変数としてOK、48akb, 48はNG。

# 変数はイコール=で値と紐付ける。(ダブルイコール==は等式のテストに使う)

# 変数に値を入力して表示

my_name = "keroring"
print my_name

出力

keroring

# 年齢を表示

my_age = 35
print my_age

出力

35

# 年齢を1足して表示
# Pythonも+=でインクリメントできる

my_age = 35
my_age = my_age + 1
print my_age
my_age += 1
print my_age

出力

36
37

      • -
  • 温度を華氏と摂氏で変換するプログラムを作ってみよう!

# 華氏を摂氏に変換する演算。華氏32にすると摂氏0、華氏212にすると摂氏100

F_kashi = 212
C_sesshi = 5.0 / 9.0 * (F_kashi - 32)
print C_sesshi

出力

100.0

# 摂氏を華氏に変換する演算。

C_sesshi = 30
F_kashi = 9.0 / 5.0 * C_sesshi + 32
print F_kashi

出力

86.0

初めてのPython #1 コメント、型、四則演算

# Pythonでは、コメントはハッシュタグの右側に書く

# 文字列を表示。シングルクオート or ダブルクオートで囲む。Pythonはどっちでもいい

print 'Hello, world!'

出力

Hello, world

# 数値を表示させる:数字

print 10, 3.14, -1

出力

10 3.14 -1

# 数字の型は、整数(int)と小数(float)がある。
# type()で囲むと中のデータの型が表示される

print type(10), type(3.14), type(1.0)

出力

# データタイプ(int()やfloat())で数値を囲むとその型で出力される
# int()は小数点以下を切り捨てて表示する。 float()は整数を小数付きの数に変換する
# データの型をint()とfloat()で変換できる

print int(3.14), int(-1.1), float(3), float(-1)

出力

3 -1 3.0 -1.0

# 浮動小数点数は丸められ、約15桁くらいまで正しく扱われる
# 小数の有効な桁数について詳しくははこちら>http://docs.python.jp/2/tutorial/floatingpoint.html

print 3.141592653589793238462643383279502884

出力

3.14159265359

# 四則演算。足す+、引く-、掛ける*、割る/、累乗**

print 1 + 2, 3 - 4, 5 * 6, 2 ** 5

出力

3 -1 30 16

# Python 2での割り算は、扱う数値が小数(decimal)だったら小数で表示される。

print 1.0 / 3, 5.0 / 2.0, -7 / 3.0

出力

0.333333333333 2.5 -2.33333333333

# 整数で割ったら整数で、切り捨てて表示される。マイナスの数字を割るときは気をつけて。

print 1 / 3, 5 / 2, -7 / 3

出力

0 2 -3

# 四則演算は算数の考え方のとおり、括弧やかけ算割り算が先に計算される。(), **, *, /, +,-の順
# 以下の2つ出力は同じ

print 1 * 2 + 3 * 4
print 2 + 12

出力

14
14

print 1 * (2 + 3) * 4
print 1 * 5 * 4

出力

20
20


# //で割って整数値だけ返す
# %は余りを返す

print 10//3, 10//5, 1//3

出力

3 2 0

print 10%3, 10%5, 1%3

出力

1 0 1

初めてのPython #0 開発環境

Pythonをゼロから学ぼう。

プログラミングを学ぶ時、開発環境を選んだり整えるのに時間をかけてしまって
肝心のプログラムする時間が減ってしまうのが悩みどころ。

だが、
そんな悩みを解決して効率よく学ぶのが大人のお勉強!

という事で今回は、WebでPythonを動かす事ができる無料のサービスを利用する。


Python Tutor
http://pythontutor.com/

動かすPythonのバージョンを選んだり、ステップごとに実行できたり、
プログラムの内部処理がグラフィカルに表示されるので
勉強にはとても良い環境。


Code Skulptor
http://www.codeskulptor.org/

シンプルな開発環境。さくっと挙動を確かめたいときはこれ。
ただしマルチバイト文字が利用できないため、日本語入力できない所が惜しい。
コメントの日本語は大丈夫。