วิธีการตรวจสอบระดับความปลอดภัยของ Certificate

“เราสามารถมั่นใจได้อย่างไรว่า Certificate ที่ใช้อยู่มีความปลอดภัยเพียงพอ” ในกรณีนี้เหมาะกับท่านที่มี Certificate ที่ซื้อมาเอง หรือมีการ Trust กันภายในองค์กร ในกรณีที่เป็น Self Sign Certificate แบบออกเอง ใช้เองไม่จำเป็นต้องเปลี่ยนครับ (เพราะไม่น่าเชื่อถืออยู่แล้วครับ) ใครต้องการเปลี่ยนไปใช้ Public Certificate ต้องตรวจสอบก่อนครับว่าเข้าเงื่อนไขของ Certificate นั้นหรือเปล่า เช่น *.psu.ac.th ถ้าเป็น www.cc.psu.ac.th อันนี้ใช้ไม่ได้ครับ ปกติเราสามารถตรวจสอบง่าย ๆ ได้อยู่แล้วผ่าน Browser ที่ใช้อยู่ ยกตัวอย่าง Chrome สามารถอ่านรายละเอียดเพิ่มเติมได้ที่นี่ครับ https://support.google.com/chrome/answer/95617?hl=th สำหรับ Certificate ที่แนะนำจะเป็น SHA-2 ขึ้นไป ซึ่งไม่แนะนำ SHA-1 เพราะไม่แข็งแรงพอ และจะสิ้นสุดระหว่างในปี 2016-2017 นี้ อ่านเพิ่มเติมได้ที่ https://community.qualys.com/blogs/securitylabs/2014/09/09/sha1-deprecation-what-you-need-to-know ในส่วนของ Windows Server สามารถตรวจสอบโดยการเข้า IIS จากนั้นกดดูในส่วนของ Certificate ในส่วนของ Linux ก็สามารถดูได้โดยกดดู Certificate จาก Browser ครับ Web ไหนยังใช้ SHA-1 รีบเปลี่ยนไปใช้ SHA-2 กันดีกว่าครับ แต่ SHA-2 รองรับ Windows XP SP3 ขึ้นไปเท่านั้นครับ หน่วยงานใดยังใช้ XP อยู่แนะนำให้ Upgrade เป็น SP3 หรือไม่ก็เปลี่ยนไปใช้ Windows 7/8/8.1/10 ก็ได้ครับ สามารถอ่านบทความเกี่ยวกับรวมวิธีลดช่องโหว่ Server เพิ่มเติมได้ที่นี่ครับ http://sysadmin.psu.ac.th/2015/11/10/serversecuritypatch

Read More »

ตรวจสอบความปลอดภัย web server https โดย Qualys

“จะตรวจสอบได้อย่างไรว่า Web Server ที่ให้บริการ https มีความปลอดภัยเพียงพอ” บทความนี้จะอธิบายวิธีการใช้งานและการอ่านค่าคร่าว ๆ ของ Web Qualys ดังนี้ เข้า Web Site https://www.ssllabs.com/ssltest จะปรากฏหน้าต่างให้ใส่ Domain Name ที่ต้องการตรวจสอบ ถ้าไม่ต้องการให้โชว์ผลขึ้น Score Board ประจานให้ทั่วโลกเห็น(อันนี้ห้ามคนอื่นกดไม่ได้นะครับ) ให้ติก Do not show the results on the boards จากนั้นกด Submit จากนั้นระบบจะทำการตรวจสอบประมาณ 1-2 นาที โดย Web Site ที่สามารถตรวจสอบได้ต้องสามารถเข้าถึงจากภายนอกเท่านั้น จากนั้นจะปรากฎหน้าผลลัพธ์ในรูปแบบ Overall Rating ดังนี้ ในส่วนแรกคือ Summary อธิบายเป็นส่วน ๆ ได้ดังนี้ Overall Rating :  จะเป็นตัวบอกคร่าว ๆ ว่า Web นี้มีความปลอดภัย Grade อะไรซึ่งจากรูปได้ F แสดงว่าไม่ปลอดภัยอย่างมาก จะอธิบายเพิ่มเติมโดยแยกเป็น 4 ส่วนคือ Certificate – ระดับความแข็งแรงของใบประกาศ (ยากในการปลอมหรือในการถอดรหัสข้อมูล) Protocol Support – ระดับความปลอดภัยของ Protocol ที่ให้บริการ SSL/TLS Key Exchange – ระดับความปลอดภัยของการแลกเปลี่ยน Key Cipher Strength – ระดับความแข็งแรงของ Cipher ซึ่งเป็น Algorithm ที่ใช้ในการเข้ารหัส ในส่วนนี้จะอธิบายลึกลงไปว่ามีผลทำให้เกิดช่องโหว่ร้ายแรงอะไรบ้าง โดยจะบอกว่าเกิดจากอะไร เช่น จากรูป Server รองรับ SSL Version 2 ซึ่งยกเลิกการใช้งานไปแล้วเพราะไม่ปลอดภัย, เกิดช่องโหว่ FREAK, POODLE TLS โดยเราสามารถอ่านรายละเอียดเพิ่มเติมโดยการกด More Info จะอธิบายรายละเอียดเพิ่มเติม แต่ถือว่าเป็นระดับที่ยังไม่ร้ายแรง แต่แนะนำให้แก้ไข เช่น จากรูปแนะนำให้เลิกใช้ SSL Version 3 ส่วน TLS ควรใช้ Version ล่าสุดซึ่งเป็น TLS 1.2 โดยเราสามารถเลื่อนมาดูรายละเอียดเพิ่มเติมได้ ซึ่งจะมีบอกในส่วน Handshake Simulation ซึ่งจะตรวจสอบให้คร่าว ๆ ว่า Browser ใดไม่รองรับบ้าง หวังว่าจะเป็นเครื่องมือที่ช่วยยกระดับความปลอดภัยของ Web Server ที่รองรับการใช้งานแบบเข้ารหัสได้เป็นอย่างดีครับ สามารถอ่านวิธีแก้ไขช่องโหว่เพิ่มเติมได้ที่นี่ครับ http://sysadmin.psu.ac.th/2015/11/10/serversecuritypatch Reference : https://www.ssllabs.com, Qualys SSL LABS

Read More »

รวมวิธีลดช่องโหว่ Server

“บทความนี้เป็นบทความเกี่ยวกับวิธีการปิดช่องโหว่ รวมถึงวิธีการ Monitor ตรวจสอบช่องโหว่ด้วยโปรแกรมต่าง ๆ ครับ” วิธีการตรวจสอบช่องโหว่ Blog 1 : ตรวจสอบความปลอดภัย web server https โดย Qualys Blog 2 : วิธีการตรวจสอบระดับความปลอดภัยของ Certificate วิธีการแก้ไข Certificate เพื่อให้มีความปลอดภัยมากขึ้น Blog 1 : Windows Server 2003 R2 Blog 2 : Windows Server 2008 / 2008 R2 / 2012 / 2012 R2 Blog 3 : Apache Web Server (Ubuntu 14.04 LTS) Blog 4 : Lighttpd Web Server (Ubuntu 14.04 LTS) วิธีการปิดช่องโหว่ Logjam,Freak,Poodle,Beast Blog 1 : Windows Server 2003 R2 Blog 2 : Windows Server 2008/2008 R2/2012/2012 R2 Blog 3 : Apache Web Server (Ubuntu 14.04 LTS) Blog 4 : Lighttpd Web Server (Ubuntu 14.04 LTS) อ่านวิธีแก้ไขเพิ่มเติมได้ที่ : http://disablessl3.com/

Read More »

การทดสอบโปรแกรม (Testing)

วันนี้ขออธิบายสิ่งที่หลาย ๆ คนอาจจะรู้ อาจจะทราบกันอยู่แล้ว แต่บางคนอาจจะยังไม่รู้ถึงกระบวนการและความจำเป็นของการทดสอบระบบ ผู้เขียนจึงขอนำเสนอข้อมูลในเรื่องนี้สักหน่อย เนื่องจากกำลังทำงานหลัก ๆ ที่เกี่ยวกับการทดสอบโปรแกรมเป็นส่วนใหญ่  การ Test คือการทดสอบระบบว่าทำงานได้ถูกต้องได้ผลตามวัตถุประสงค์หรือไม่ ซึ่งเป็นการทดสอบกระบวนการทางพื้นฐานทางคอมพิวเตอร์ โปรแกรมคอมพิวเตอร์มีหลักการง่าย ๆ คือ Input -> Process -> Output วิธีการกำหนด Test case อย่างง่ายที่สุดคือทำการ Test แต่ละส่วนโดยอยู่บนพื้นฐานของ Business requirement และวัตถุประสงค์ของระบบ ซึ่งจะต้องมีการเขียน Test case โดย Test case เป็นเอกสารที่ระบุชุดข้อมูลป้อนเข้าผลลัพธ์ ที่คาดว่าจะได้รับและกลุ่มของเงื่อนไขในการดำเนินการในชุดทดสอบต่าง ๆ มีจุดมุ่งหมายเพื่อแบ่งฟังก์ชันการทำงานของซอฟต์แวร์ออกเป็นฟังก์ชันย่อย ๆ เพื่อให้สามารถทำการทดสอบโดยชุดข้อมูลป้อนเข้าดังกล่าว และสร้างผลลัพธ์ที่สามารถประเมินผลได้โดยปกติจะขึ้นกับ use case ของระบบ “Test case ประกอบด้วย” ชื่อ Test case โดยปกติแล้วคือ Use case ตาม ฺBusiness requirement เช่น การ login เข้าระบบ วัตถุประสงค์ของ Test case นั้น ๆ ผลที่คิดว่าจะได้รับ (Output) กำหนดลักษณะข้อมูลที่จะนำเข้าเพื่อใช้ในการ Test (Input) ขั้นตอนวิธีการทดสอบ เป็น Step 1,2,3,… ว่าแต่ละขั้นตอนต้องทำอะไรบ้าง ผลที่ได้จากการ test “ชนิดของการ Test” ทดสอบความถูกต้อง Unit test เป็นการ test functional ของระบบในแต่ละส่วนย่อยๆเพื่อให้แน่ใจว่าแต่ละส่วนทำงานได้ถูกต้อง Integration test เป็นการนำแต่ละ unit มาประกอบกันและทดสอบการติดต่อระหว่าง unit ว่าสามารถทำงานได้ถูกต้อง End to end test เป็นการทดสอบระบบในภาพรวมโดยนำแต่ละส่วนของระบบมาประกอบกันให้สมบูรณ์ และทดสอบระบบประหนึ่งเป็น ผู้ใช้ของระบบ ทดสอบคุณภาพ Stress test เป็นการทดสอบประสิทธิภาพของระบบ เพื่อทดสอบว่าระบบสามารถรับจำนวนผู้ใช้, ข้อมูล ได้มากแค่ไหน Usability test เป็นการทดสอบประสิทธิภาพการใช้งานของระบบ เช่น UI เหมาะสมต่อการใช้งานหรือไม่ เข้าใจได้ง่ายหรือไม่ การทดสอบระบบไม่ว่าที่ไหนก็คงมีวิธีการและขั้นตอนไม่ต่างกันนัก ที่แตกต่างกันคงจะเป็นความเข้มข้นของการ Test เสียมากกว่า คือจะ Test ละเอียดแค่ไหน มีระบบที่ใช้เพื่อการ Test พร้อมหรือไม่ และทีมงานมีความพร้อมแค่ไหน การจะเป็น Tester ที่ดีได้ต้องเข้าใจถึงมาตรฐานต่างๆที่ระบบใช้งาน เพื่อจะได้ทดสอบได้อย่างถูกต้องและแบบมีหลักเกณฑ์ ยกตัวอย่างง่ายๆ หากเป็น Tester ของเว็บไซต์ที่หนึ่ง หากไม่มีความรู้ด้านมาตรฐานหรือด้านเทคนิคเลย จะทดสอบอะไรได้บ้าง? เพียงแต่ click ดูแล้วดูผลลัพธ์ว่าตรงเท่านั้นหรือ?

Read More »

วิธีการทดสอบเว็บไซต์ Responsive บน Smart phone ด้วย Chrome

“ปัจจุบันกระแสการออกแบบเว็บเชิงตอบสนอง (Responsive design) ถูกนำมาใช้ในการออกแบบเว็บสมัยใหม่ เนืองจากสามารถดูได้ทั้งแบบผ่านเครื่องคอม แท็บเล็ต และมือถือ ได้โดยทันที” แต่ในระว่างการออกแบบ ถ้าผู้ออกแบบจะต้องมีการทดสอบบนอุปกรณ์แท็บเล็ต หรือมือถือ ต่างๆ ซึ่งมีความละเอียดของหน้าจอแตกต่างกันออกไป ซึ่งในส่วนที่ Chrome มีเครื่องมือที่ช่วยในการแสดงผลเว็บไซต์บนอุปกรณ์ Smart phone ได้ โดยไม่ต้องโหลดเพิ่ม แต่ประการใด !!! แถมวิธีการก็ง่ายแสนง่าย  ขั้นตอนที่ 1 ให้ไปที่ More tools > Developer tools ดังภาพ ขั้นตอนที่ 2 เลือกที่รูปโทรศัพท์ ดังภาพ ขั้นตอนที่ 3 สังเกต ด้านซ้ายจะปรากฏหน้าจอมือถือขึ้นมา ให้ระบุ URL ที่เราต้องการดังภาพ จากภาพ จะเห็นว่าหากเป็นเว็บที่ออกแบบด้วยหลักการออกแบบเว็บเชิงตอบสนอง (Responsive design) จะมีการจัดหน้าจอให้เหมาะสมกับอุปกรณ์ ขั้นตอนที่ 4 สังเกต ด้านบน เราสามารถเลือกรุ่นของ Smart Phone ได้หลายรุ่น แม้จะไม่มาก แต่ก็เป็นรุ่นหลักและหลากหลายความละเอียด หรือจะเลือกปรับขนาดเองก็ทำได้  และสามารถปรับให้แสดงแนวตั้งและแนวนอนได้อีกด้วย ดังภาพ จะเห็นว่าเครื่องมือด้งกล่าวใช้งานไม่ยาก ทำให้สามารถดูหน้าจอในหลายๆ ความละเอียดได้อย่างรวดเร็ว 

Read More »