Fortify SCA คืออะไร และจะติดตั้งอย่างไร
เผยแพร่แล้ว: 2023-01-13Fortify Static Code Analyzer (SCA) วิเคราะห์ซอร์สโค้ดและระบุสาเหตุของช่องโหว่ด้านความปลอดภัย
การสแกน Fortify จะจัดลำดับความสำคัญของปัญหาที่ร้ายแรงที่สุดและแนะนำวิธีที่นักพัฒนาควรแก้ไข
เสริมความแข็งแกร่งให้กับเครื่องวิเคราะห์โค้ดแบบคงที่
Fortify Static Code Analyzer มีเครื่องมือวิเคราะห์ช่องโหว่ต่างๆ เช่น Buffer, Content, Control Flow, Dataflow, Semantic, Configuration และ Structural เครื่องวิเคราะห์แต่ละเครื่องยอมรับกฎประเภทต่างๆ ที่ปรับให้เหมาะกับการนำเสนอข้อมูลที่จำเป็นสำหรับประเภทของการวิเคราะห์ที่ดำเนินการ
Fortify Static Code Analyzer มีองค์ประกอบดังต่อไปนี้
- ตัวช่วยสร้างการสแกนป้อมปราการ เป็นเครื่องมือที่เสนอตัวเลือกในการเรียกใช้สคริปต์หลังหรือก่อนการวิเคราะห์
- โต๊ะทำงานตรวจสอบ เป็นแอปที่ใช้ GUI ซึ่งจัดระเบียบและจัดการผลลัพธ์ที่วิเคราะห์
- ตัวแก้ไขกฎที่กำหนดเอง เป็นเครื่องมือที่ช่วยให้นักพัฒนาสร้างและแก้ไขกฎที่กำหนดเองสำหรับการวิเคราะห์
- ปลั๊กอินสำหรับ IntelliJ และ Android Studio ปลั๊กอินนี้ให้ผลการวิเคราะห์ภายใน IDE
- ปลั๊กอินสำหรับ Eclipse เครื่องมือนี้รวมเข้ากับ Eclipse และแสดงผลลัพธ์ภายใน IDE
- ปลั๊กอินไม้ไผ่ เป็นปลั๊กอินที่รวบรวมผลลัพธ์จาก Bamboo Job ที่เรียกใช้การวิเคราะห์
- ปลั๊กอินเจนกินส์ ปลั๊กอินนี้รวบรวมผลการวิเคราะห์จาก Jenkins Job
คุณสมบัติของ Fortify SCA
#1. รองรับหลายภาษา
บางภาษาที่รองรับใน Fortify SCA ได้แก่ ABAP/BSP, ActionScript, ASP (พร้อม VBScript), COBOL, ColdFusion, Apex, ASP.NET, C# (.NET), C/C++, Classic, VB.NET, VBScript, CFML, Go, HTML, Java (รวมถึง Android ), JavaScript/AJAX, JSP, Kotlin, Visual Basic, MXML (Flex), Objective C/C++, PHP, PL/SQL, Python, Ruby, Swift, T-SQL และ XML
#2. ตัวเลือกการปรับใช้ที่ยืดหยุ่น
- Fortify On-Prem ช่วยให้องค์กรสามารถควบคุม Fortify SCA ได้ทุกด้าน
- Fortify On Demand ช่วยให้นักพัฒนาทำงานในสภาพแวดล้อม Software As Service
- Fortify Hosted ช่วยให้นักพัฒนาเพลิดเพลินไปกับทั้งสองโลก (ตามความต้องการและในองค์กร) ผ่านสภาพแวดล้อมเสมือนที่แยกจากกันพร้อมการควบคุมข้อมูลเต็มรูปแบบ
#3. รวมเข้ากับเครื่องมือ CI/CD ได้อย่างง่ายดาย
- นักพัฒนาสามารถรวม Fortify SCA เข้ากับ IDE หลักๆ เช่น Visual Studio และ Eclipse ได้อย่างง่ายดาย
- นักพัฒนาสามารถควบคุมการทำงานต่างๆ ได้ เนื่องจากเครื่องมือนี้ทำงานร่วมกับเครื่องมือโอเพ่นซอร์ส เช่น Sonatype, WhiteSource, Snyk และ BlackDuck
- คุณยังสามารถผสานรวม Fortify SCA กับที่เก็บโค้ดระยะไกล เช่น Bitbucket และ GitHub เครื่องมือนี้สามารถตรวจสอบโค้ดที่ส่งไปยังแพลตฟอร์มดังกล่าวเพื่อหาช่องโหว่และส่งรายงาน
#4. การแจ้งเตือนตามเวลาจริง
คุณไม่ต้องรอจนกว่าจะเขียนโค้ดเสร็จเพื่อทำการทดสอบ เนื่องจาก Fortify SCA จะอัปเดตตามเวลาจริงเมื่อคุณเขียนโค้ด เครื่องมือนี้มีตัววิเคราะห์การกำหนดค่าและโครงสร้างที่สร้างขึ้นเพื่อความรวดเร็วและประสิทธิภาพ และช่วยให้คุณสร้างแอปพลิเคชันที่ปลอดภัยได้
#5. ผู้ช่วยตรวจสอบขับเคลื่อนโดยการเรียนรู้ของเครื่อง
ตรวจสอบระบบได้อย่างรวดเร็วโดยใช้ผู้ช่วยตรวจสอบซึ่งใช้อัลกอริทึมการเรียนรู้ของเครื่อง ผู้ช่วยจะระบุช่องโหว่ทั้งหมดและจัดลำดับความสำคัญตามระดับความเชื่อมั่น องค์กรจึงสามารถประหยัดค่าใช้จ่ายในการตรวจสอบเมื่อเครื่องมือสร้างรายงาน
#6. ความยืดหยุ่น
ผู้ใช้สามารถเลือกประเภทการสแกนที่ต้องการได้ตามความต้องการ ตัวอย่างเช่น หากคุณต้องการการสแกนที่แม่นยำและมีรายละเอียด คุณสามารถเลือกตัวเลือกการสแกนที่ครอบคลุมได้ นักพัฒนายังสามารถเลือกตัวเลือกการสแกนแบบเร็วได้ หากต้องการตรวจพบเฉพาะภัยคุกคามที่สำคัญเท่านั้น
ฟอร์ติฟาย เอสซีเอ ทำอะไร?
Fortify SCA มีบทบาทหลายอย่างในระบบนิเวศการพัฒนาโดยทั่วไป ต่อไปนี้เป็นบทบาทบางส่วน
การทดสอบแบบคงที่ช่วยสร้างโค้ดที่ดีขึ้น
Static Application Security Testing (SAST) ช่วยระบุช่องโหว่ด้านความปลอดภัยในระยะเริ่มต้นของการพัฒนา โชคดีที่ช่องโหว่ด้านความปลอดภัยเหล่านี้ส่วนใหญ่มีราคาไม่แพงในการแก้ไข
แนวทางดังกล่าวช่วยลดความเสี่ยงด้านความปลอดภัยในแอปพลิเคชันเนื่องจากการทดสอบจะให้ผลตอบกลับทันทีเกี่ยวกับปัญหาที่แนะนำในโค้ดระหว่างการพัฒนา
นักพัฒนายังเรียนรู้เกี่ยวกับความปลอดภัยผ่านการทดสอบความปลอดภัยของแอปพลิเคชันแบบคงที่ ดังนั้นพวกเขาจึงสามารถเริ่มผลิตซอฟต์แวร์ที่ปลอดภัยได้
Fortify SCA ใช้ฐานความรู้ที่กว้างขวางเกี่ยวกับกฎการเข้ารหัสที่ปลอดภัยและอัลกอริธึมหลายรายการเพื่อวิเคราะห์ซอร์สโค้ดของแอปพลิเคชันซอฟต์แวร์เพื่อหาช่องโหว่ด้านความปลอดภัย วิธีการวิเคราะห์เส้นทางที่เป็นไปได้ที่ข้อมูลและการดำเนินการสามารถปฏิบัติตามเพื่อระบุช่องโหว่และเสนอการแก้ไข
ค้นหาปัญหาด้านความปลอดภัยตั้งแต่เนิ่นๆ
Fortify SCA เลียนแบบคอมไพเลอร์ หลังจากการสแกน Fortify เครื่องมือนี้จะอ่านไฟล์ซอร์สโค้ดและแปลงเป็นโครงสร้างระดับกลางที่ได้รับการปรับปรุงสำหรับการวิเคราะห์ความปลอดภัย
ช่องโหว่ด้านความปลอดภัยทั้งหมดนั้นง่ายต่อการค้นหาในรูปแบบระดับกลาง เครื่องมือนี้มาพร้อมกับเครื่องมือวิเคราะห์ที่ประกอบด้วยเครื่องวิเคราะห์พิเศษหลายตัว ซึ่งจากนั้นจะใช้กฎการเข้ารหัสที่ปลอดภัยเพื่อวิเคราะห์ว่ารหัสละเมิดกฎการปฏิบัติการเข้ารหัสที่ปลอดภัยหรือไม่
Fortify SCA ยังมาพร้อมกับตัวสร้างกฎ หากคุณต้องการขยายความสามารถในการวิเคราะห์แบบคงที่และรวมกฎที่กำหนดเอง ผลลัพธ์ในการตั้งค่าดังกล่าวสามารถดูได้ในรูปแบบต่างๆ ตามงานและผู้ชม
Fortify Software Security Center (SSC) ช่วยจัดการผลลัพธ์
Fortify Software Security Center (SSC) เป็นที่เก็บการจัดการแบบรวมศูนย์ที่ให้การมองเห็นโปรแกรมรักษาความปลอดภัยแอปพลิเคชันทั้งหมดขององค์กร ผ่าน SSC ผู้ใช้สามารถตรวจสอบ ทบทวน จัดลำดับความสำคัญ และจัดการความพยายามในการแก้ไขเมื่อมีการระบุภัยคุกคามด้านความปลอดภัย
Fortify SSC นำเสนอขอบเขตและภาพที่ถูกต้องของมาตรการรักษาความปลอดภัยของแอปพลิเคชันในองค์กร SSC อยู่ในเซิร์ฟเวอร์ส่วนกลาง แต่ได้รับผลลัพธ์จากกิจกรรมการทดสอบความปลอดภัยของแอปพลิเคชันต่างๆ ตั้งแต่การวิเคราะห์ตามเวลาจริง ไดนามิก ไปจนถึงการวิเคราะห์แบบคงที่
Fortify SCA สามารถวิเคราะห์โค้ดประเภทใดได้บ้าง
การสแกนป้อมปราการยืมมาจากสถาปัตยกรรมของอาณาจักรที่เป็นอันตรายเมื่อทำการวิเคราะห์โค้ด เหล่านี้คือประเภทของการวิเคราะห์ที่ Fortify SCA ทำ
- การตรวจสอบความถูกต้องของข้อมูลและการเป็นตัวแทน - ปัญหาที่เกี่ยวข้องกับการตรวจสอบความถูกต้องของข้อมูลและการเป็นตัวแทนมาจากการเข้ารหัสแบบอื่น การแสดงตัวเลข และอักขระเมตา ตัวอย่างของปัญหาดังกล่าว ได้แก่ การโจมตี "บัฟเฟอร์ล้น" "การเขียนสคริปต์ข้ามไซต์" และ "การแทรก SQL" ซึ่งเกิดขึ้นเมื่อผู้ใช้เชื่อถืออินพุต
- การละเมิด API ผู้โทรไม่ปฏิบัติตามการสิ้นสุดของสัญญาเป็นประเภทการละเมิด API ที่พบบ่อยที่สุด
- คุณลักษณะด้านความปลอดภัย การทดสอบนี้แยกความแตกต่างระหว่างความปลอดภัยของซอฟต์แวร์และซอฟต์แวร์รักษาความปลอดภัย การวิเคราะห์จะมุ่งเน้นไปที่การรับรองความถูกต้อง การจัดการสิทธิ์ การควบคุมการเข้าถึง การรักษาความลับ และปัญหาการเข้ารหัส
- เวลาและรัฐ คอมพิวเตอร์สามารถสลับระหว่างงานต่างๆ ได้อย่างรวดเร็ว การวิเคราะห์เวลาและสถานะค้นหาข้อบกพร่องที่เกิดจากการโต้ตอบที่ไม่คาดคิดระหว่างเธรด ข้อมูล กระบวนการ และเวลา
- ข้อผิดพลาด Fortify SCA จะตรวจสอบว่าข้อผิดพลาดให้ข้อมูลแก่ผู้โจมตีมากเกินไปหรือไม่
- คุณภาพของรหัส คุณภาพของรหัสที่ไม่ดีมักจะนำไปสู่พฤติกรรมที่คาดเดาไม่ได้ อย่างไรก็ตาม ผู้โจมตีอาจมีโอกาสจัดการกับแอปพลิเคชันเพื่อประโยชน์ของตน หากพบโค้ดที่เขียนไม่ดี
- การห่อหุ้ม นี่คือกระบวนการวาดขอบเขตที่แข็งแกร่ง การวิเคราะห์ดังกล่าวอาจหมายถึงการแยกความแตกต่างระหว่างข้อมูลที่ตรวจสอบได้และไม่ได้ตรวจสอบ
ดาวน์โหลดและติดตั้ง Fortify SCA
ก่อนเริ่มกระบวนการติดตั้ง คุณต้อง
- ตรวจสอบความต้องการของระบบจากเอกสารอย่างเป็นทางการ
- รับไฟล์ลิขสิทธิ์ Fortify เลือกแพ็คเกจของคุณจากหน้าดาวน์โหลด Microfocus ค้นหา Fortify Static Code Analyzer สร้างบัญชีของคุณ และรับไฟล์ใบอนุญาตของ Fortify
- ตรวจสอบให้แน่ใจว่าคุณได้ติดตั้ง Visual Studio Code หรือโปรแกรมแก้ไขรหัสอื่นที่รองรับ
วิธีติดตั้งบนวินโดวส์
- เรียกใช้ไฟล์ตัวติดตั้ง
Fortify_SCA_and_Apps_<version>_windows_x64.exe
หมายเหตุ: <version> คือเวอร์ชันที่เผยแพร่ซอฟต์แวร์
- คลิก ถัดไป หลังจากยอมรับข้อตกลงใบอนุญาต
- เลือกตำแหน่งที่จะติดตั้ง Fortify Static Code Analyzer และคลิก Next
- เลือกส่วนประกอบที่คุณต้องการติดตั้งและคลิก ถัดไป
- ระบุผู้ใช้ว่าคุณกำลังติดตั้งส่วนขยายสำหรับ Visual Studio 2015 หรือ 2017
- คลิก ถัดไป หลังจากระบุพา ธ สำหรับไฟล์
fortify.license
- ระบุการตั้งค่าที่จำเป็นในการอัปเดตเนื้อหาความปลอดภัย คุณสามารถใช้เซิร์ฟเวอร์อัปเดต Fortify Rulepack โดยระบุ URL เป็น https://update.fortify.com คลิก ถัดไป
- ระบุว่าคุณต้องการติดตั้งซอร์สโค้ดตัวอย่างหรือไม่ คลิก ถัดไป
- คลิก ถัดไป เพื่อติดตั้ง Fortify SCA และแอปพลิเคชัน
- คลิก อัปเดตเนื้อหาความปลอดภัย หลังการติดตั้ง แล้วคลิก เสร็จสิ้น หลังจากการติดตั้งเสร็จสิ้น
วิธีการติดตั้งบน Linux
คุณสามารถทำตามขั้นตอนเดียวกันเพื่อติดตั้ง Fortify SCA บนระบบที่ใช้ Linux อย่างไรก็ตาม ในขั้นตอนแรก ให้รันเป็นไฟล์ตัวติดตั้ง
Fortify_SCA_and_Apps__linux_x64.run
คุณสามารถติดตั้ง Fortify SCA โดยใช้พรอมต์บรรทัดคำสั่ง
เปิดเทอร์มินัลของคุณและเรียกใช้คำสั่งนี้
./Fortify_SCA_and_Apps__linux_x64.run --mode text
ปฏิบัติตามคำแนะนำทั้งหมดตามที่ระบุในบรรทัดคำสั่งจนกว่าคุณจะเสร็จสิ้นกระบวนการติดตั้ง
วิธีเรียกใช้การสแกน Fortify
เมื่อคุณติดตั้งเสร็จแล้ว ก็ถึงเวลาตั้งค่าเครื่องมือสำหรับการวิเคราะห์ความปลอดภัย
- ตรงไปที่ไดเร็กทอรีการติดตั้งและไปที่โฟลเดอร์ bin โดยใช้พรอมต์คำสั่ง
- พิมพ์
scapostinstall.
จากนั้นคุณสามารถพิมพ์ s เพื่อแสดงการตั้งค่า - ตั้งค่าโลแคลโดยใช้คำสั่งเหล่านี้
พิมพ์ 2 เพื่อเลือกการตั้งค่า
พิมพ์ 1 เพื่อเลือกทั่วไป
พิมพ์ 1 เพื่อเลือกภาษา
สำหรับภาษา ให้พิมพ์ English: en เพื่อตั้งค่าภาษาเป็นภาษาอังกฤษ
- กำหนดค่าการอัปเดตเนื้อหาความปลอดภัย พิมพ์ 2 เพื่อเลือกการตั้งค่า จากนั้นพิมพ์ 2 อีกครั้งเพื่อเลือก Fortify Update ขณะนี้คุณสามารถใช้เซิร์ฟเวอร์อัปเดต Fortify Rulepack โดยระบุ URL เป็น https://update.fortify.com
- พิมพ์
sourceanalyzer
เพื่อตรวจสอบว่าติดตั้งเครื่องมือครบถ้วนหรือไม่
ตอนนี้ Fortify SCA จะทำงานอยู่เบื้องหลังและตรวจสอบโค้ดทั้งหมดของคุณเพื่อหาช่องโหว่ด้านความปลอดภัย
ห่อ
กรณีของระบบที่ถูกแฮ็กและข้อมูลถูกบุกรุกได้กลายเป็นอาละวาดในยุคอินเทอร์เน็ตนี้ โชคดีที่ตอนนี้เรามีเครื่องมือเช่น Fortify Static Code Analyzer ที่สามารถตรวจจับภัยคุกคามความปลอดภัยขณะที่โค้ดกำลังเขียน ส่งการแจ้งเตือน และให้คำแนะนำในการจัดการกับภัยคุกคามดังกล่าว Fortify SCA สามารถเพิ่มผลผลิตและลดต้นทุนการดำเนินงานเมื่อใช้กับเครื่องมืออื่นๆ
คุณยังสามารถสำรวจ Software Composition Analysis (SCA) เพื่อปรับปรุงความปลอดภัยของแอปพลิเคชันของคุณ