2 ปปปปปปปปปปปปปปปปปปปปปป ปปปปปปปปปปปปปปปปปปปป ปปปปปปปปปปปปปปปปป
Jan 03, 2016
2ปั�ญหาเกี่�ยวกี่�บกี่ารร�กี่ษาความปัลอดภั�ยของข�อม�ล
ในระบบคอมพิ�วเตอร
Foundation of Information Security
• ความหมายทั่�วไปั ของ Security = ?• ความหมายของ Computer Security = ?• ว�ว�ฒนากี่ารของระบบคอมพิ�วเตอร และ ระบบกี่ารสื่'อสื่าร
• Comm. :Analog–To–Digital Transformation• Computer and Communications Security
• ต�องน(าหล�กี่กี่าร ว�ศวกี่รรมระบบมาใช้� (Security Engineering)
• System Security = All the components
• “นิ�ยามใหม�” ในปั�จจ,บ�น ค'อ• Information Security• “Computer Security = Information Security”
ปั�ญหาทั่างด�าน ความปัลอดภั�ย ?• ปั- ค.ศ. 1998
– สื่ายล�บ KGB ในกี่ร,งเบอร ล�นตะว�นตกี่ได�ทั่(ากี่ารขโมยความล�บของระบบ SDI จากี่ Lawrence Livermore Laboratory โดยผ่0านระบบเคร'อข0ายคอมพิ�วเตอร
• ปั- ค.ศ. 1984 – ผ่��จ�ดกี่ารธนาคารสื่าขาย0อยได�ทั่(ากี่ารขโมย เง�นจ(านวน 25 ล�าน
เหร�ยญสื่หร�ฐ จากี่บ�ญช้�ล�กี่ค�าจ(านวนมากี่ โดยทั่(ากี่ารโอนทั่�ละเล3กี่น�อยทั่,กี่ๆว�นทั่(าให�เจ�าของบ�ญช้�ไม0อาจสื่�งเกี่ตได�
• ในระบบเศรษฐกี่�จย,คโลกี่าภั�ว�ฒน น�5 – “เงิ�นิตรา” ได้�เปลี่��ยนิมาอย��ในิร�ปแบบของิ “ข�อม�ลี่ด้�จิ�ตอลี่
…0011011..”– หร�อ นิ�ยามสั้��นิๆได้�ว่�า “Information is Money…!”
ภั�ยค,กี่คามต0อระบบ Threats
• อ�นตรายทั่�อาจเกี่�ดข65นกี่�บระบบ • Person , cracker, spy, viruses
• จ,ดอ0อนทั่� “เปั7นไปัได�ทั่�อาจจะ” เกี่�ดกี่�บระบบ Vulnerabilities
• กี่ารโจมต�ระบบ โดยผ่0านจ,ดอ0อนของระบบทั่�ถู�กี่ค�นพิบ
• กี่ารปั9องกี่�นและตอบโต�• กี่ารปั9องกี่�นโดยกี่ารกี่(าจ�ดหร'อหล�กี่เล�ยงจ,ดอ0อนของระบบ• กี่ารตองโต�ผ่��บ,กี่ร,กี่ระบบ
หลี่�กการแห�งิ “คว่ามงิ�าย” ในิการเจิาะระบบ
Principle of Easiest Penetration
• ผ่��บ,กี่ร,กี่อาจใช้�ว�ธ�กี่ารใดกี่3ได�ในกี่ารพิยายามเจาะเข�ามาในระบบ ในทั่�น�5อาจไม0จ(าเปั7นต�องทั่(าผ่0านระบบกี่ารปั9องกี่�นทั่�แข3งแกี่ร0งทั่�สื่,ดกี่3ได�
• กี่ารร�กี่ษาความปัลอดภั�ยให�กี่�บระบบน�5น เปั7น “กี่ระบวนกี่าร” ม�ใช้0เปั7นเพิ�ยงแค0กี่ารน(าเทั่คโนโลย�ฯ มาใช้�เทั่0าน�5น (Security is a process not a product.)
ภั�ยค,กี่คามต0อระบบกี่ารสื่'อสื่าร
• กี่ารแอบด�กี่ฟั�งแบบ Passive ( หร'อ Eavesdropping)– กี่ารเปั<ดเผ่ยความล�บของข�อม�ล (Disclosure)– กี่ารว�เคราะห กี่�จกี่รรม ปัร�มาณ ขนาด เวลา ของข�อม�ลทั่�ผ่0านระบบสื่'อสื่าร
(Traffics Flow Analysis)
• กี่ารขโมยด�กี่ฟั�งข�อม�ลแบบ Active– กี่ารแอบขโมยและแกี่�ไขข�อม�ล (Tapping & Modifications)– WITHDRAW ACCOUNT $10 WITHDRAW ACCOUNT
$1000
ผ่��สื่0ง
ผ่��ร �บ
Insecure Channel
Active Wire-Tapping
Passive Wire-Tapping
ภั�ยค,กี่คามต0อ “ข�อม�ล Data” ในระบบ• กี่ารแอบค�นหาข�อม�ล (Browsing)
– ทั่(ากี่ารค�นหาข�อม�ลในหน0วยความจ(าหล�กี่ หร'อ หน0วยความจ(า สื่(ารอง (Main Memory or Secondary Storage)
– เน'องมาจากี่ข�อม�ลจะคงอย�0ในระบบจนกี่ว0าจะถู�กี่ลบออกี่– ผ่��บ,ร,กี่ต�องม�สื่�ทั่ธ�ในกี่ารเข�าถู6งหน0วยความจ(าต�องห�ามได�
(Unauthorized Area of memory)– เปั9าหมายอาจเปั7น “ข�อม�ลล�บ” หร'อ “ต�นแบบของซอฟัทั่ แวร
ล�ขสื่�ทั่ธ�?”– กี่ารค�นหาข�อม�ลทั่�เข�ารห�สื่แล�วกี่3ย�งอาจเปั7นอ�นตรายได�เน'องจากี่
อาจเปั7นข�อม�ลทั่�สื่ามารถูน(าไปัว�เคราะห ได�
ภั�ยค,กี่คามต0อ “ข�อม�ล Data” ในระบบ
• กี่ารร�วไหลของข�อม�ล (Leakage)– กี่ารร�วไหลของข�อม�ลล�บอย0างไม0ต�5งใจ โดยกี่ระบวนกี่าร
ทั่(างาน Process ทั่�ถู�กี่ต�อง อาทั่� เช้0น กี่าร Compiling programs, file editor cache memory , etc..
– กี่ารร�วไหลของข�อม�ลผ่0าน Covert Channel
• กี่ารว�เคราะห โดยอาศ�ยความเกี่�ยวโยง (Inference) – กี่ารว�เคราะห หร'อต�ความ ข�อม�ลล�บ จากี่ความสื่�มพิ�นธ และ
ความเช้'อมโยงของข�อม�ลทั่�เปั7นทั่�เปั<ดเผ่ย (Correlating released statistics)
ภั�ยค,กี่คามต0อ “ข�อม�ล Data” ในระบบ
• กี่ารแอบเปัล�ยนแปัลงแกี่�ไขข�อม�ล• Data Tampering
• กี่ารลบ หร'อ ทั่(าลายข�อม�ลโดยไม0ต�5งใจAccidental Destruction เช้0นOverwriting or Deletion, faulty software processes, etc…
• กี่ารแอบฟั�งและเล�ยนแบบ (Masquerading)• Spoofing & Re-playing
ภั�ยค,กี่คามต0อซอฟัทั่ แวร • สื่0วนปัระกี่อบต0างๆ ของโปัรแกี่รมซอฟัทั่ แวร
• ระบบปัฏิ�บ�ต�กี่าร Operating Systems• ซอฟัทั่ แวร ปัระย,กี่ต Applications
• กี่ารลบ กี่ารทั่(าลาย หร'อ กี่ารแทั่นทั่� ซอฟัทั่ แวร • Misconfigurations
• กี่ารแอบเปัล�ยนแปัลงแกี่�ไขโปัรแกี่รมซอฟัทั่ แวร • Trojan Horses , Virus , Trapdoor• กี่ารร�วไหลของข�อม�ล
• กี่ารขโมยซอฟัทั่ แวร (Thefts)• Costly Protection
กี่ารจ(าแนกี่ภั�ยค,กี่คาม• กี่ารด�กี่ฟั�ง หร'อ แอบขโมยข�อม�ล (Interceptions)
– เกี่�ดข65นระหว0างกี่ารสื่0งข�อม�ล• กี่ารรบกี่วนระบบข�อม�ลข0าวสื่ารไม0ให�ทั่(างานได� (Interruptions)
– System Lost, Unavailable, Unusable– DOS attacks, Overloading Works
• กี่ารแอบเปัล�ยนแปัลงแกี่�ไขระบบข�อม�ลข0าวสื่าร(Modifications)– Unauthorized Access– Programs or Data
• กี่ารแอบใช้� หร'อ เพิ�มเต�มบางสื่0วนภัายในระบบ (Fabrications)– Spurious Network Transactions– Adding Database Records (User Account)
ความปัลอดภั�ยของ “ข�อม�ล”Data Security
• เปั7นสื่าขาว�ช้าว�ทั่ยาศาสื่ตร ทั่�ว0าด�วยกี่ารศ6กี่ษาค�นคว�าเพิ'อหาว�ธ�กี่ารร�กี่ษาความปัลอดภั�ยของ
ข�อม�ลภัายในระบบข�อม�ลข0าวสื่าร(Computing Systems)
• ว�ธ�กี่ารปั9องกี่�น 4 ว�ธ�หล�กี่ (Controls)• Cryptographic controls• Access controls• Information Flow controls• Inference Controls
• Cryptographic controls• ปักี่ปั9อง “ความล�บ” และ ตรวจสื่อบ “ความถู�กี่ต�อง”
• Access controls• ควบค,มกี่ารอน,ญาตในกี่ารทั่(า Reading , Writing ,
Deletion ของ ข�อม�ล (Data) และ โปัรแกี่รม(Software)
• ควบค,มและตรวจสื่อบกี่ารเข�าถู6ง Objects โดยตรง
ความปัลอดภั�ยของ “ข�อม�ล”Data Security
• Information Flow controls• ควบค,มช้0องทั่างกี่ารไหลของข�อม�ล (Valid Channels)• สื่�ทั่ธ�ในกี่ารc ว�เคราะห แยกี่แยะ หร'อ แจกี่จ0ายข�อม�ล
(Dissemination of Information)• ต�องตรวจสื่อบทั่�5ง 3 ช้0องทั่างของกี่ารไหลของข�อม�ล ค'อ
Legitimate Channels, Storage Channels, Covert Channels
• Inference Controls• ปั9องกี่�นกี่ารว�เคราะห หาความล�บของข�อม�ล จากี่ข�อม�ลทั่�ได�
ร�บกี่ารเปั<ดเผ่ยแล�วอย0างถู�กี่ต�อง
ความปัลอดภั�ยของ “ข�อม�ล”Data Security
เสื่าหล�กี่ของความปัลอดภั�ยThe Three Pillars of Information Security
IntegrityConfidentiality
Availability
-- Secret Information
-- Authorized Disclosure ONLY
-- Presense of Object/Services in usable form
-- Capacity to meet service needs
-- Progress : Bounded waiting time
-- Adequate time/time line for services
-- Precise
-- Accurate
ข�อจ(ากี่�ดของกี่ารร�กี่ษาความปัลอดภั�ย Security & Capacity
Level of Security
ระด้�บคว่ามปลี่อด้ภั�ย
Usability
การใช้�งิานิ
High
High
LowThe older Java Sandbox Security Model
Security Systems Engineering
System Architecture Analysis
Threats–Vulnerability-Attacks Assesments
Risk AnalysisPrioritize
Vulnerabilities
ImplementingSecurity
Acceptable Risks
High-Risks System
“An Iterative Process”
กี่ระบวนกี่ารเข�ารห�สื่ทั่�วไปัSecret Key
Cryptographic SystemDES
Cryptographic SystemBlowfish + Secure Key Storage
Biometric Device
Cryptographic Systems
• Secrecy Requirements • 1.) ไม�อาจิทำ'าการว่�เคราะห( ค'านิว่ณ เพื่��อหากระบว่นิ
เปลี่��ยนิแปลี่งิอย�างิเป+นิข��นิเป+นิตอนิในิการ “ถอด้รห�สั้” ข�อม�ลี่ได้�ถ-งิแม�ว่�าจิะม�ข�อม�ลี่ C แลี่ะ M (Computationally Infeasible for deciphering transformation)
• 2.) ไม�อาจิทำ'าการว่�เคราะห( ค'านิว่ณ ได้�อย�างิม�ระบบเพื่��อหา M จิาก C ได้� (No systematic methods of determining M from C)
M C MEk Dk
ก.ญแจิ K เป+นิสั้�ว่นิทำ��ปกป0องิคว่ามลี่�บของิข�อม�ลี่
Enciphering, E
Deciphering, D
PROTECTED (NO
!!!)M
Cryptographic Systems
• Authenticity Requirements• 1.) ไม�อาจิทำ'าการว่�เคราะห( ค'านิว่ณ เพื่��อหากระบว่นิ
เปลี่��ยนิแปลี่งิอย�างิเป+นิข��นิเป+นิตอนิในิการ “เข�ารห�สั้” ข�อม�ลี่ได้�ถ-งิแม�ว่�าจิะม�ข�อม�ลี่ C แลี่ะ M (Computationally Infeasible for enciphering transformation)
• 2.) ไม�อาจิทำ'าการว่�เคราะห( ค'านิว่ณ ได้�อย�างิม�ระบบเพื่��อหา M จิาก C ได้� (No systematic methods of determining M from C)
M C MEk Dk
The key, K, keeps all the secret…
PROTECTED
Enciphering, E
Deciphering, D
(NO !!!)
M
ระด�บความปัลอดภั�ยของระบบSystem Assurance
• ระบบทั่�น0าเช้'อถู'อ– TCB – Trusted Computing Base– น�ยาม
• “The Trusted computing base is that portion of a computer system …. Which contains all elements of the system responsible for supporting the security policy and supporting the isolation of objects (code and data) on which the protection is based”
• ด้�งินิ��นิ ระบบจิะม�คว่ามนิ�าเช้��อถ�อได้�ก1ต�อเม��อ ระบบทำ��งิระบบสั้ามารถทำ��จิะ ปฏิ�บ�ต�งิานิให�เป+นิไปตาม นิโยบายหร�อข�อก'าหนิด้ด้�านิคว่ามปลี่อด้ภั�ย
(Security Policy) ได้�อย�างิสั้มบ�รณ(นิ��นิเองิ– ระด�บความปัลอดภั�ยน�5น จะว�ดเทั่�ยบได�จากี่มาตรฐานสื่ากี่ลทั่�ได�กี่(าหนดไว�
แล�ว (Levels of Trusts – Orange Book, Common Criterias, etc…)
กี่ารสื่ร�างระบบทั่�น0าเช้'อถู'อTCB
• น�ยามของ TCB – ต�องสื่ามารถูบ�งค�บใช้� Security Policy ได�– ต�องม�ว�ธ�กี่ารและข�ดความสื่ามารถูทั่�เพิ�ยงพิอในกี่ารร�กี่ษาความ
ปัลอดภั�ย (measures and mechanisms)– ต�องสื่ามารถูปัระเม�นค0าได� Evaluation
• นโยบายด�านกี่ารร�กี่ษาความปัลอดภั�ย “Security Policy”– ค'อ ข�อกี่(าหนด หร'อ ข�อความ ทั่�เกี่�ยวกี่�บกี่ารร�กี่ษาความปัลอดภั�ยให�
กี่�บข�อม�ลและสื่0วนต0างๆของระบบ ทั่�เราคาดหว�งไว�ว0า ระบบน�5นๆจะสื่ามารถูปัฏิ�บ�ต�ตามได�
ระบบทั่�น0าเช้'อถู'อTCB -- Trusted Computing Base
• โดยทั่�วไปัแล�ว ผ่��ใช้�ระบบ ต�องกี่ารให�ระบบปัฏิ�บ�ต�กี่าร(Operating System) น�5น สื่ามารถูทั่�จะทั่(ากี่ารปักี่ปั9อง
ทั่ร�พิยากี่รของระบบได�ด�งน�5 ค'อ• หน0วยความจ(า (Memory protection)• ระบบแฟั9มข�อม�ล (File Protection)• ปักี่ปั9องทั่ร�พิยากี่รข�อม�ลทั่�วไปั (General Object
Protection)• ควบค,มและพิ�สื่�จน ทั่ราบ ในกี่ารเข�าถู6งทั่ร�พิยากี่รต0างๆ
ของระบบ (Access Authentication)
กี่ารสื่ร�างระบบทั่�น0าเช้'อถู'อTCB
• ต�องค(าน6งถู6งหล�กี่ 4 ปัระกี่าร ค'อ• ต�องกี่(าหนด Security Policy ให�ด�
– Well-defined, consistent security Policy
• ต�องเล'อกี่ใช้� Model of Security ทั่�ด�และถู�กี่ต�องตามทั่� OS จะสื่ามารถูสื่น�บสื่น,นได�
– Representation of policy that the OS will enforce.
• ต�องออกี่แบบ Design ให�ด�ตาม Security Requirements– How to construct.
• ต�องสื่ามารถูว�ดระด�บความน0าเช้'อถู'อได� Trust Level – ม�ข�ดความสื่ามรถูใดบ�าง Security Features = ???– ปัระเม�นระด�บความปัลอดภั�ยได� Security Assurance
Confidence Level
TCB• Design
– Access control between between OS - Resources & Services & Users
– Kernelized Design• Based on
– “Reference Monitor Concept” (i.e. control all accesses)
• Tamperproof• Always invoke• Small enough for analysis & testing to ensure
completeness
– Virtual Machine : Real OS Isolation/Separation by using Virtual OS’es
• EX: IBM Processor Resource/System Manager(PR/SM)
TCB
Design of Access Controls for OS
• Subjects & Objects– MAC – Mandatory
Access Control– DAC –
Discretionary Access Control
– Role - Based
ระบบซอฟัทั่ แวร ปัระย,กี่ต ใช้�งาน(Applications)
Building Blocks of an Application System