ตรวจสอบ SSL issue

เราทราบกันดีอยู่แล้วว่า ณ ปัจจุบันเว็บไซด์ส่วนใหญ่เป็น HTTPS ไปหมดแล้ว ซึ่ง HTTPS ที่ว่าคือการใช้งาน protocol ssl/tls นั่นเอง ซึ่งแน่นอนว่าเมื่อมีการใช้งาน protocol ที่แตกต่างจากเดิม ปัญหาที่อาจจะเกิดขึ้นนั้นก็ต้องทดสอบแตกต่างไปจากเดิมเช่นกัน โดยปกติตัวผมเองมักจะใช้ testssl.sh ในการทดสอบหาปัญหา (issue) ของ HTTPS ต่างๆ ซึ่งเราสามารถตรวจสอบผลที่ได้จาก testssl.sh ได้โดยทำตามแต่ละ issue ดังต่อไปนี้ *** หมายเหตุ 1#…
View Post

ว่าด้วยเรื่อง Vulnerability Assessment และ Penetration Test

จากที่เคยพูดเรื่อง Application Security Testing ไปแล้ว ทุกๆท่านน่าจะเข้าใจใน SAST และ DAST ไปแล้วว่ามันทำงานอย่างไร และแตกต่างกันอย่างไร ทีนี้เราจะมาว่ากันด้วยเรื่องว่า Vulnerability Assessment และ Penetration Test แตกต่างกันยังไง Vulnerability Assessment Vulnerability Assessment (บางครั้งจะเรียกว่า Vulnerability Scan) หรือเรียกสั้นๆว่า VA. นั้น เป็นการใช้เครื่องมือในการทดสอบหาช่องโหว่ของ Service…
View Post

ทำความเข้าใจ LM, NTLM, NTLMv2 [Part2]

ต่อจากตอนที่ 1 ที่ว่าด้วยเรื่องการทำงานของ LM กับตัวอย่างของ Application สำหรับการ crack LM hash กันไปแล้ว มาวันนี้เป็น NTLM และ NTLMv2 กันบ้างครับ NTLM และ NTLMv2 NTHash สำหรับ LM นั้นเป็น Format ของการเก็บ password ใน Windows ก่อนรุ่น Windows…
View Post

ทำความเข้าใจ LM, NTLM, NTLMv2 [Part1]

วันนี้เราจะมาทำความเข้าใจเกี่ยวกับรูปแบบการเก็บ password ของ Windows โดยแต่ก่อนจนถึงปัจจุบันก็มีพัฒนาการมาเรื่อยๆครับ ซึ่งจะเริ่มจาก LM (Lan Manager) hash โดย LM นั้นเป็นรูปแบบดั้งเดิมในการเก็บ password ของ Windows ตั้งแต่ยุค 1980 ซึ่งในช่วงนั้นยังมีจำนวน charset ที่ยังจำกัดอยู่(16-bits characters) ซึ่งทำให้การ crack password นั้นทำได้ง่ายมากโดยดึงจาก SAM database บน Windows…
View Post

อธิบาย PHP Type Juggling

โดยปกติแล้วธรรมชาติของ PHP เวลามีการใช้งาน == เพื่อทำการเปรียบเทียบค่าของ 2 parameter ตัว PHP จะมีการพยายามแปลงสภาพของ parameter ให้เป็นลักษณะของข้อมูลเดียวกัน เช่น การเปรียบเทียบปกติ ผลลัพธ์คือ ตัวอย่างต่อมาถ้าเป็น int แต่ค่าไม่เท่ากัน เราจะเขียนเป็น ผลลัพธ์คือไม่เท่ากัน เพราะค่า a และ b ไม่เท่ากัน ตัวอย่างต่อมาถ้าเป็น string เราจะเขียนเป็น…
View Post

Runtime debug และ manipulate ด้วย cycript ภายใต้การใช้งาน bfinject

ก่อนหน้านี้เราติดตั้งและใช้งาน bfinject สำหรับการ decrypt application และการ dump class มาแล้ว คราวนี้มา debug ขณะ Application นั้นๆกำลังรันบ้าง ทำไมถึงใช้วิธีนี้ เพราะการโหลด cycript โดยตรงนั้นทำไม่ได้อีกต่อไป เราไม่สามารถติดตั้ง cycrpt ไปยัง iOS Jailbreak ได้อีกต่อไป (ผมทำไม่ได้ใน Eletra jailbreak เลยจำเป็นต้องใช้วิธีอื่นแทน) 1. ติดตั้ง…
View Post

Dump class ต่างๆของ iOS Application ใน Jailbreak iOS

หลังจากคราวที่แล้วเราทำการ dump iOS Application ออกมาเพื่อให้สามารถนำ debug ได้ ต่อมาเป็นเรื่องของการ list ว่า Class ของ Application มีอะไรบ้าง เพื่อให้สามารถ debug ได้ง่ายๆครับ 1. Download Objc class-dump (class-dump) และ Swift class-dump(class-dump-swift) เอาไว้ /usr/local/bin 2. ไปที่ unzip folder ที่เราได้ extract มาจาก…
View Post

วิธีการติดตั้ง BFInject เพื่อทำ Decrypt Application

โดยปกติแล้ว iOS Application จะมีการเข้ารหัสและทำ ASLR/PIE Protection ในการใช้งาน memory ไว้ ทีนี้หากเราต้องการจะให้มันเป็น Application ที่เราสามารถ debug ได้ด้วย IDA, Hopper หรืออะไรแนวๆนั้นก็สามารถใช้ crackulous, Clutch แต่เนื่องด้วยผมเอา iOS 11.3 มา Jailbreak แล้วใช้พวกนั้นไม่ได้เลย(จะทำแบบ manual ก็เสียเวลา) ก็เลยหาเครื่องมืออื่นมาช่วยนั่นคือ bfinject ครับ…
View Post

รวมการทำ post exploitation ของ Linux

ก่อนหน้านี้เราพูดถึงการทำ Privilege Escalation ด้วย sudo และ exploit path กันมาแล้ว วันนี้ก็เลยเอาอันอื่นๆที่จำเป็นเมื่อทำ post exploitation ใน Linux มารวมไว้ครับ 1. Add public key ไว้ใน authorised key เพื่อให้สามารถ login ได้ 2. การรัน shell ผ่านคำสั่งต่างๆ…
View Post

มาเล่น Kioptrix Level 1- 5 กัน

วันนี้ผมเองเพิ่งจะมานั่ง clear tab (ซึ่ง ณ ตอนที่เขียนก็มีจำนวนตามภาพด้านล่าง) ที่เปิดค้างไว้ แล้วทีนี้เจอว่าเปิด post สำหรับ VM ที่มีช่องโหว่ที่แนะนำให้โหลดมาฝึกเล่นก่อนที่จะสอบ OSCP ก็เลยจับ Kiotrix ที่อยู่บนสุดของ List มาเล่นหน่อยละกัน Kioptrix เป็น VM ที่มีช่องโหว่สารพัดให้เราฝึกกัน โดยมันจะมีหลายๆ level ด้วยกัน ซึ่งจริงๆแล้วมันมีคนเคยเขียน blog มาหลายๆ blog แล้ว…
View Post