2019.09.19 第47回 情報処理学会 インターネットと運用技術研究会 https://www.ipsj.or.jp/kenkyukai/event/iot47spt35.html
Toward The Coherently Fittable Securityࡾ ༔հ(GMOϖύϘגࣜձࣾ ϖύϘݚڀॴ), Ѩ෦ ത(ίίϯגࣜձࣾ ٕज़ݚڀࣨ), ܀ྛ ݈ଠ(ϖύϘݚڀॴ)2019.09.19 ୈ47ճ ใॲཧֶձ Πϯλʔωοτͱӡ༻ٕज़ݚڀձͳΊΒ͔ͳηΩϡϦςΟΛࢦͯ͠
View Slide
1. എܠ2. ͳΊΒ͔ͳηΩϡϦςΟ3. ͳΊΒ͔ͳηΩϡϦςΟͷ࣮ݱʹ͚ͨ෦ݚڀ4. ߟͱ·ͱΊ2࣍
1.എܠ
ηΩϡϦςΟରࡦͷӡ༻ͱ՝
• ར༻ऀʹͱͬͯɼηΩϡϦςΟࢪࡦಋೖʹΑΔ໘͕૿͑རศੑ͕ଛͳΘΕΔ• ଟཁૉೝূͷಋೖΞΫηε੍ݶʢతͳ੍ʣ• IDS/IPSʹΑΔޡݕग़ͷରԠʢؒతͳӨڹʣ5ηΩϡϦςΟରࡦͷӡ༻ͱ՝ᶃ: རศੑͷԼ
• ৽ͨͳڴҖʹରͯ͠ɼ৽͍͠ࢪࡦΛಋೖ͢ΔɼϧʔϧΛݟ͠ݫ͘͢͠ΔͳͲɼࡍݶͳ͘ྔΛཁٻ͢Δ• ҰڧԽͨ͠ηΩϡϦςΟରࡦɼηΩϡϦςΟ্ͷڴҖ͕ऑ·ͬͨͱͯ͠ܧଓ͞Εෆཁͳίετͷ૿Ճʹܨ͕Δʹ͋Δɽ6ηΩϡϦςΟରࡦͷӡ༻ͱ՝ᶄ: ίετͷ૿Ճ
• རศੑɾίετͱηΩϡϦςΟτϨʔυΦϑ• ঢ়گݸʑਓʹΑͬͯඞཁͳηΩϡϦςΟରࡦҟͳΔ• ৴པͰ͖Δؔऀʹର͢ΔηΩϡϦςΟରࡦͷ෦తͳ؇• ݸผ͔ͭৄࡉͳݖݶཧӡ༻ෛՙ͕ߴ͍• WebαʔϏεͷΑ͏ͳෆಛఆଟͷར༻ऀΛલఏͱ͢ΔใγεςϜͰҰͷݖݶཧ7ηΩϡϦςΟରࡦͷӡ༻ͱ՝: ᶃᶄͷΞϓϩʔνॊೈͳηΩϡϦςΟରࡦΛӡ༻ෛՙΛ૿େ͢Δ͜ͱͳ͘ߦ͍͍ͨ
• ใγεςϜͷ։ൃӡ༻ऀʹͱͬͯɼཧ͖͢ϧʔϧࢹ͖͢ϩάɼηΩϡϦςΟΠϯγσϯτͷରԠͳͲηΩϡϦςΟΛڧԽ͢ΔҝʹΔ͖͜ͱ͕૿Ճɽ• ֤ηΩϡϦςΟରࡦͷ࿈ܞ• ֤ηΩϡϦςΟରࡦΛԣஅͨ͠ϩάͷੳ• ֤ηΩϡϦςΟରࡦͷ࠷৽Խ8ηΩϡϦςΟରࡦͷӡ༻ͱ՝ᶅ: ӡ༻ෛՙͷ૿େ
• ࿈ܞԣஅͷ՝౷߹ཧʹΑΔলྗԽ• ෳͷηΩϡϦςΟରࡦΛ౷߹͢ΔUTM• ֤छϩάͷҰݩཧɾੳΛߦ͏SIEM• ࠷৽Խͷ՝ύονγάωνϟͷࣗಈߋ৽ʹΑ࣮ͬͯݱ• ҰํͰɼFirewallͷϙϦγʔWAFͷύλʔϯͱ͍ͬͨಋೖઌͷڥWebαʔϏεͷಛੑʹґଘ͢Δͷมߋʹै͢ΔΈ͕ඞཁ9ηΩϡϦςΟରࡦͷӡ༻ͱ՝: ᶅͷΞϓϩʔνޮతͳηΩϡϦςΟରࡦͷͨΊҡ࣋ཧΛࣗಈԽ͍ͨ͠
ݚڀͷత
• ใηΩϡϦςΟʹؔ͢ΔΠϯγσϯτͷൃੜසࣾձతӨڹʑ֦େ• ଟ༷Խ͢ΔαΠόʔ߈ܸʹରԠ͢ΔͨΊɼଟޚ͕ओྲྀͱͳΔ• ڧݻͳηΩϡϦςΟͱͷτϨʔυΦϑͰ͋ΔརศੑͷԼɾίετӡ༻ෛՙͷ૿େΛղফ͠ɼܧଓՄೳͳηΩϡϦςΟରࡦͷΈΛ࡞Δ͜ͱ͕ใγεςϜͷ։ൃӡ༻ऀʹͱͬͯॏཁ11ݚڀͷత
͜ΕΒΛ࣮ݱ͢ΔͨΊͷΈΛʮͳΊΒ͔ͳηΩϡϦςΟʯͱͯ͠ఏҊ12ఏҊͷࠎࢠᶃ ඞཁͳ࣌ʹඞཁ࠷খݶͷηΩϡϦςΟΛఏڙ→ ঢ়گݸʑਓʹ࠷దԽ͢Δ͜ͱͰརศੑͷҡ࣋ɾෆཁͳίετൃੜͷճආᶄ ࠷దͳαʔϏεΛࣗಈతʹఏڙ→ ঢ়گݸʑਓͷѲ࠷దԽ͕ࣗಈతʹߦΘΕΔ͜ͱͰӡ༻ෛՙΛݮ
ͳΊΒ͔ͳγεςϜ
• ใγεςϜͷ͜ͱΛ͍͏ͷΈͳΒͣɼޓ͍ʹӨڹΛٴ΅͠߹͏ܧଓతͳؔʹ͋Δར༻ऀʢϢʔβ͓Αͼ։ൃӡ༻ऀʣͱใγεςϜͱ͔ΒͳΔ૯ମͱͯ͠ͷγεςϜ14ͳΊΒ͔ͳγεςϜग़ॴ܀ྛ݈ଠ ࡾ༔հ দຊ྄հ ͳΊΒ͔ͳγεςϜΛࢦͯ͠ ϚϧνϝσΟΞɺࢄɺڠௐͱϞόΠϧʢ%*$0.0ʣγϯϙδϜ # +VM
• ཁ݅ʢ1ʣɿར༻ऀͱใγεςϜͱ͕ܧଓతͳؔΛऔΓ࣋ͭաఔʹ͓͍ͯɼར༻ऀͦΕͧΕʹݻ༗ͷίϯςΩετΛݟग़ͨ͠Γɼ৽ͨͳίϯςΩετΛग़ͨ͠ΓͰ͖Δ͜ͱ• ཁ݅ʢ2ʣɿཁ݅ʢ1ʣΛɼར༻ऀʹΑΔ໌ࣔతͳૢ࡞Λ՝͢͜ͱͳ࣮͘ݱͰ͖Δ͜ͱ• ཁ݅ʢ3ʣɿཁ݅ʢ1ʣ͓Αͼʢ2ʣʹΑͬͯಘΒΕͨίϯςΩετʹج͖ͮɼใγεςϜ͕ར༻ऀʹରͯ͠࠷దͳαʔϏεΛࣗಈతʹఏڙͰ͖Δ͜ͱ15ͳΊΒ͔ͳγεςϜग़ॴ܀ྛ݈ଠ ࡾ༔հ দຊ྄հ ͳΊΒ͔ͳγεςϜΛࢦͯ͠ ϚϧνϝσΟΞɺࢄɺڠௐͱϞόΠϧʢ%*$0.0ʣγϯϙδϜ # +VM
2.ͳΊΒ͔ͳηΩϡϦςΟ
• ڧݻͳηΩϡϦςΟΛ࣮ݱ͢ΔηΩϡϦςΟରࡦͷͨΊʹɼརศੑίετͷ໘Ͱͷॊೈੑͱɼӡ༻ͷ໘Ͱͷޮతͳҡ࣋ཧΛཱ͕྆ඞཁ• ʮͳΊΒ͔ͳγεςϜʯͷཁ݅Λຬͨ͢͜ͱͰ͜ΕΛղܾ͢Δ17ͳΊΒ͔ͳγεςϜʹΑΔηΩϡϦςΟͷ࣮ݱᶃ ݸʑਓʹ߹Θͤͨඞཁ࠷খݶͷηΩϡϦςΟରࡦʹΑͬͯॊೈੑΛ֬อ→ ͳΊΒ͔ͳγεςϜʹ͓͚Δཁ݅ʢ3ʣᶄ ར༻ऀͱηΩϡϦςΟγεςϜͷؔੑΛࣗಈ͔ͭܧଓతʹݕग़ɽݸผԽΛؚΉηΩϡϦςΟରࡦΛޮతʹҡ࣋ཧ→ ͳΊΒ͔ͳγεςϜʹ͓͚Δཁ݅ʢ1ʣͱʢ2ʣ
18ͳΊΒ͔ͳηΩϡϦςΟग़ॴʮϖύϘݚڀॴʯºʮίίϯٕज़ݚڀࣨʯʮͳΊΒ͔ͳηΩϡϦςΟʯͷ࣮ݱʹ͚ͨڞಉݚڀՌͱͯ͠จ͓ΑͼΦʔϓϯιʔειϑτΣΞΛൃදγεςϜͷར༻ӡ༻ʹ͓͚Δ͞·͟·ͳোนʢΰπΰπʣΛऔΓআ͖ɺݸʑਓʹ߹ΘͤͨʢύʔιφϥΠζͨ͠ʣηΩϡϦςΟΛඞཁͳ࣌ʹඞཁ࠷খݶͷػೳͱͯ͠ఏڙ͢Δ͜ͱͰɺརศੑΛଛͳΘͣɺ͔ͭϓϥΠόγʔใकΓͳ͕ΒηΩϡϦςΟΛ࣮ݱ͢ΔΈɻlz
19
• ใγεςϜͷڥքɼ͢ͳΘͪϢʔβ͘͠։ൃӡ༻ऀͱίΞαʔϏεͷதؒʹҐஔ͢Δ• ར༻ऀଆͷEdgeͰཁٻʹର͢ΔηΩϡϦςΟݕূΛߦ͏• ཁٻʹର͢ΔηΩϡϦςΟཁ݅ͷબݸਓ·ͨݸʑʹ࠷దԽ• ։ൃऀଆͷEdgeͰίΞαʔϏεʹର͢ΔηΩϡϦςΟཁ݅Λड͚͚ɼ۩ମɾݸผͷϧʔϧͷࣗಈੜৼΓ͚Λߦ͏ɽ• ηΩϡϦςΟΦʔέετϨʔλͱͷ࿈ܞ20Edge
21ηΩϡϦςΟΦʔέετϨʔλϩάऩूɾݕࡧจ຺ղੳϧʔϧద༻ηΩϡϦςΟΦʔέετϨʔλใγεςϜͱϢʔβͱͷΓͱΓʹؔ͢ΔେͳϩάΛऩू͠ɺඞཁʹԠͯ͡ݕࡧͰ͖ΔػೳΛఏڙཁٻΛ࣌ܥྻʹଊ͑Δ͜ͱͰจ຺ΛѲ͠ɺͦͷ༰มԽʹରͯ͠దͳϥϕϦϯάͱܖػΛ༩͑Δจ຺ղੳ͔ΒಘΒΕͨϥϕϦϯάܖػʹج͍ͮͯɺ࠷ద͔ͭඞཁ࠷খݶͷηΩϡϦςΟΛఏڙ͢ΔαʔϏεΛߏཁٻจ຺ʹରͯ͠ɺͦͷ࣌ʑʹඞཁ࠷খݶͷηΩϡϦςΟͷఏڙΛҡ࣋͢ΔΈɻԼهͷίϯϙωϯτ͔ΒͳΔɻ
3.ͳΊΒ͔ͳηΩϡϦςΟͷ࣮ݱʹ͚ͨ෦ݚڀ
SQLΫΤϦͷϗϫΠτϦετࣗಈ࡞
• ͳΊΒ͔ͳηΩϡϦςΟʹݶΒͣɼҰൠతͳηΩϡϦςΟରࡦͰɼอޢରͷใγεςϜʹैͯ͠ɼηΩϡϦςΟཁ݅Λߋ৽͢Δඞཁ͕͋Δɽ• ఏҊγεςϜͰɼݸʑਓʹ߹ΘͤͨηΩϡϦςΟΛඞཁͳ࣌ʹඞཁ࠷খݶͷػೳͱͯ͠ఏڙ͢ΔͨΊʹηΩϡϦςΟཁ݅ଟ༷Խ͢Δɽ• ͜ΕΒΛӡ༻ෛՙΛߴΊͣʹղܾ͢ΔʹɼηΩϡϦςΟཁ݅ͷߋ৽ΛਓखΛհͣ͞ʹߦ͑ΔΈ͕ඞཁͱͳΔɽ24ӡ༻໘Ͱͷޮతͳҡ࣋ཧ
SQLΫΤϦͷϗϫΠτϦετࣗಈ࡞25ଜ໋ Ѩ෦ത ੁ ྗ݈࣍ দຊ྄հ 8FCΞϓϦέʔγϣϯςετΛ༻͍ͨ42-ΫΤϦͷϗϫΠτϦετࣗಈ࡞ख๏ Πϯλʔωοτͱӡ༻ٕज़γϯϙδϜจू WPMVNF QBHFTr OPW• WebΞϓϦέʔγϣϯͷࣗಈςετ࣌ʹൃߦ͞ΕΔΫΤϦΛߏԽ͠ɼσʔλϕʔεFirewallͷϗϫΠτϦετͱͯ͠ར༻• ఏҊγεςϜͰɼ։ൃӡ༻ऀଆͷEdgeʹରͯ͠WebΞϓϦέʔγϣϯͷࣗಈςετ͕ొ͞Εɼੜ͞ΕͨϗϫΠτϦετΛηΩϡϦςΟཁ݅ͱͯ͠ߋ৽
ଟ༷Խ͢ΔηΩϡϦςΟཁ݅ͷࣗಈੜ26ҰൠϢʔβ6TFS"ཁٻ༻ͷ*'6TFS#ཁٻ༻ͷ*'0QT"ͷηΩϡϦςΟཁٻ0QT"ϢʔβγεςϜ܈ ӡ༻։ൃऀγεςϜใγεςϜݸผͷཁٻʢจ຺ʣηΩϡϦςΟΦʔέετϨʔλಛݖϢʔβ ΞϓϦέʔγϣϯͷࣗಈςετ͔ΒηΩϡϦςΟཁٻΛࣗಈੜ<> ࠓޙɺϢʔβཁٻͷจ຺ʹԠͯ͡ɺͷηΩϡϦςΟཁٻΛద༻͠Θ͚Δʢ͋Δ42-จΛಛݖϢʔβʹڐՄ͢ΔʣऔΓΈΛߦ͏ଜ໋ Ѩ෦ത ੁ ྗ݈࣍ দຊ྄հ 8FCΞϓϦέʔγϣϯςετΛ༻͍ͨ42-ΫΤϦͷϗϫΠτϦετࣗಈ࡞ख๏ Πϯλʔωοτͱӡ༻ٕज़γϯϙδϜจू WPMVNF QBHFTr OPW
Hayabusa
28طଘݚڀ: HayabusaѨ෦ത ౡܚҰ ٶຊେี ؔ୩༐࢘ ੴݪ༸ Ԭా தଜྒྷ দӜ࢙ ࣰాཅҰ ࣌ؒ࣠ݕࡧʹ࠷దԽͨ͠εέʔϧΞτՄೳͳߴϩάݕࡧΤϯδϯͷ࣮ݱͱධՁ ใॲཧֶձจࢽ ר߸ QBHFT NBS• ͳΊΒ͔ͳηΩϡϦςΟʹݶΒͣɼҰൠతͳηΩϡϦςΟରࡦͰɼϩάΛҰՕॴʹूΊɼूதॲཧΛߦ͏߹͕ଟ͍• େྔͷϩάΛऩू͔ͭ͠ॲཧ͢ΔͨΊͷࣄલݚڀͱͯ͠ɼHayabusaΛ։ൃ• ධՁ࣮ݧͰɼ144ԯߦͷsyslogσʔλͷશจݕࡧ͕7ඵͰྃ
• ϚΠΫϩηΩϡϦςΟαʔϏε͕࣮ߦ͞ΕΔEdgeࣗମʹେྔͷϩά͕ੵ͞ΕΔɼ͔ͭEdgeͷେʢ1ສʙʣ• ϩάΛूதతʹॲཧͤ͞ΔʹɺϩάͷసૹԆଳҬͷѹഭ͕ݒ೦͞ΕΔ• EdgeͰͷࢄॲཧ• EdgeͷதͰࣗతʹॲཧΛ݁ͤ͞Δ• EdgeͷதͰඞཁͳσʔλͷΈूܭͯ͠ɺΦʔέετϨʔλʹୡ29EdgeΛఆͨ͠ϩάॲཧ
Scalable Edge Log Processing30• ϩάॲཧΛEdgeدͤΔ• EdgeͰͷϩάੵ• EdgeͰͷϩάॲཧͷ݁ʢࣗݾ݁ or ݁ՌͷΈ֎෦సૹʣ• αʔϏεσΟεΧόϦʔͷԠ༻• EdgeͰಈ͘ϚΠΫϩαʔϏεͷϩάΛऩूɾॲཧ• ͦͷͨΊͷϚΠΫϩαʔϏεͷ࠷దԽϧʔςΟϯά
Kaburaya
• Edge͕ಁաతʹৼΔ͏ͨΊʹύϑΥʔϚϯε͕ॏཁ• ҰํͰɼݸਓԽʹΑͬͯEdge͕૿Ճ͢ΔͨΊɼࢿݯࡃͷ࠷దԽ͕ٻΊΒΕΔɽ• ಉ༷ʹɼݸਓԽʹ͍֤Edgeͷଟ༷ੑ͕૿ͨ͢ΊɼखಈͰͷνϡʔχϯάࠔͱͳΔɽ32Edgeʹ͓͚ΔࢿݯεέδϡʔϦϯάͷඞཁੑ
33Edgeʹ͓͚ΔࢿݯεέδϡʔϦϯάͷඞཁੑ&EHFϚΠΫϩηΩϡϦςΟαʔϏε࣮ߦͷฒྻԽ ֤ϚΠΫϩηΩϡϦςΟαʔϏεͷ࣮ߦج൫ͷΦʔτεέʔϦϯά• ύϑΥʔϚϯε্ʹϚΠΫϩηΩϡϦςΟαʔϏε࣮ߦͷฒྻԽ࣮ߦج൫ͷεέʔϦϯά͕༗ޮ• ͜ΕΒΛෛՙࢿݯ੍Λߟྀͯ͠࠷దԽ͍ͨ͠QSPDFTTͰෳϚΠΫϩηΩϡϦςΟαʔϏε͕࣮ߦ͞ΕΔ߹ͳͲ֤ϚΠΫϩηΩϡϦςΟαʔϏε͕ίϯςφͰఏڙ͞ΕΔ߹ͳͲ⁞ ⁞
• ϑΟʔυόοΫ੍ޚΛ༻͍ͯɼରͷλεΫͷಛੑΛࣄલʹΔ͜ͱͳ͘ɼԠత͔ͭܧଓతʹ࠷దͳฒߦΛٻΊΔ• ఏҊγεςϜͰɼݸผԽ͞ΕͨηΩϡϦςΟݕূ༰ͱॲཧ࣌ؒΛࣄલʹΔ͜ͱͳ͘ɼ࠷దͳΈ߹ΘͤΛ࣮ߦ࣌ʹࣗಈͰಋ͘Kaburaya34:VTVLF.JZBLF 0QUJNJ[BUJPOGPS/VNCFSPGHPSPVUJOFT6TJOH'FFECBDL$POUSPM (PQIFS$PO.BSSJPUU.BSRVJT4BO%JFHP.BSJOB $BMJGPSOJB +VMZ
4.ߟͱ·ͱΊ
• ͳΊΒ͔ͳγεςϜͷཁ݅ʹج͖ͮηΩϡϦςΟରࡦͷݸਓͷ࠷దԽΛࣗಈ͔ͭܧଓతʹߦ͏ηΩϡϦςΟγεςϜΛఏҊ• EdgeͰͷϩάऩूɾݕࡧͷ؍͔ΒHayabusaͷ֦ு• ޮతͳҡ࣋ཧʹඞཁͳηΩϡϦςΟఆٛͷࣗಈੜ• ݸผԽ͞Εͨଟ༷ͳڥʹ͓͚ΔΦʔτεέʔϦϯάͷ࠷దԽ• ࠓޙίϯςΩετղੳͱηΩϡϦςΟରࡦͷϚονϯάͷ࣮ݱͱEdgeͷཧతͳஔܦ࿏બʹؔ͢Δݕ౼ΛਐΊΔ• ෳͷใγεςϜΛԣஅ͢ΔڥΛલఏͱͨ͠EdgeͷઃܭΛ௨࣮ͯ͠༻ੑͷߴ͍γεςϜΛ࣮ݱ͢Δ 36ߟͱ·ͱΊ