Planet TLWG

Syndicate content
Planet TLWG - http://linux.thai.net/planet
Updated: 31 min 56 sec ago

Neutron: rlm_raw - FreeRADIUS module

24 February, 2017 - 14:59

เรื่องนี้ เกี่ยวข้องกับ FreeRADIUS [1] ซึ่งคนที่เคยติดตั้ง และใช้งาน จะรู้ว่า FreeRADIUS จะมีฝั่ง Server และ Client โดยทั้งสองฝั่งจะถือ กุญแจ (Shared Secret) เดียวกัน โดยที่ Server จะใช้ IP Address ของ Client ในการเลือก กุญแจ ออกมาเทียบ

ปัญหาที่เกิดขึ้นคือ การใช้ FreeRADIUS เป็น Server ให้กับ Client ที่มี IP ไม่แน่นอน อย่างเช่น พวกที่มาจาก xDSL, FTTx เราจะไม่สามารถกำหนด Shared Secret ให้กับ Client นั้น ๆ ได้ นอกจากทุก Client จะถือกุญแจเดียวกัน ร่วมกันหลาย ๆ ราย

การใช้กุญแจร่วมกัน ก็อาจจะเป็นทางออก แต่ผมหาข้อมูลไปต่อ ว่าพอจะมีวิธีอื่น ๆ ที่รัดกุมกว่านี้ไหม ก็ไปเจอ [2] ที่พูดถึง rlm_raw และ dynamic_clients ซึ่งเราสามารถที่จะเอาข้อมูลจาก attribute ที่ client ส่งมา เพื่อไปใช้ประกอบกับการเลือก กุญแจ ออกมาเทียบได้ แต่ทว่า rlm_raw (original) ค่อนข้างเก่า และดึงมาใช้ตรง ๆ กับ FreeRADIUS 3.0.x ไม่ได้

ผมจึงเขียน rlm_raw [3] ขึ้นมาใหม่ โดยดู original เป็นแนวทาง และปรับมาใช้ libradius ซึ่งทำให้ code ที่เขียนใหม่ สะอาด และกระชับ กว่า code เดิมมาก

จาก ตัวอย่าง ใน README จะเห็นได้ว่า ผมสามารถ ที่จะใช้ค่า จาก attribute "NAS-Identifier" เพื่อไปเลือก secret ออกมาจาก redis server เพื่อมาตั้งค่า Client ใหม่ให้ FreeRADIUS ได้

Happy Hacking!

[1] http://freeradius.org/
[2] http://jakehe.blogspot.com/2014/07/freeradius-installation.html
[3] https://github.com/neutronth/rlm_raw

LookHin: การดักจับข้อมูลที่วิ่งเข้าออกบน HTTP/HTTPS จากแอพในมือถือ Android โดยใช้ Burp Suite

22 February, 2017 - 22:14

บทความนี้จะแสดงตัวอย่างการดักจับข้อมูลจากแอพในมือถือ Android ที่รับส่งไปยังเซิฟเวอร์ทั้งบน HTTP และ HTTPS โดยเราจะทดสอบกับแอพของไปรษณีย์ที่ใช้สำหรับตรวจสอบสถานะการส่งพัสดุ Thailand Post Track & Trace เพื่อให้เห็นว่ามีการส่งข้อมูลอะไรออกไปที่เซิฟเวอร์บ้าง โดยในการทดลองนี้จะทำกับแอพที่ใช้ certificate ของระบบเท่านั้น ส่วนแอพอย่างของ facebook หรือ instagram เขาจะมี certificate ของตัวเองที่ฝั่งมากับแอพทำให้เราไม่สามารถหลอกโปรแกรมได้ หรืออาจจะยืนยัน CA ว่าเป็น CA จริงหรือไม่ผ่านทาง DNS อีกที (ผมเข้าใจว่าอย่างนั้นนะ อันนี้ไม่แน่ใจ เดียวผมไปหาข้อมูลเพิ่มเติมมาก่อน)

ในการทดลองการดักจับข้อมูลครั้งนี้ เราจะให้ทั้งคอมฯ และมือถือต่ออยู่ใน Wi-Fi เน็ทเวิร์คเดียวกัน โดยเราจะใช้ Burp Suite Free Edition ซึ่งสามารถหาดาวน์โหลดได้จาก Burp Suite Free Edition เป็นโปรแกรมที่ทำหน้าที่เป็น proxy แต่ผมไม่ลงวิธีการติดตั้งนะครับตัวใครตัวมัน

หลังจากติดตั้งเรียบร้อยแล้ว ให้เปิดโปรแกรม Burp Suite Free Edition และเข้าไปที่แท็บ Proxy -› Options และเลือก Add เพื่อตั้ง proxy ใหม่

ทำการกำหนด Bind to port เป็น 8089 (ปกติก็คงเป็น 8080 แต่พอดีผมใช้มันไปทำอย่างอื่นแล้ว) และเลือก Bind to address เป็น All interfaces เมื่อใส่ค่าทุกอย่างเรียบร้อยก็คลิก OK

Windows Firewall จะขึ้นมาถามยืนยันการใช้งานพอร์ทให้กด Allow access

ถ้าในช่อง Running ในส่วนของ proxy ที่เราสร้างไว้ยังไม่ถูกติ๊กเป็นเครื่องหมายถูก ก็ติ๊กให้มันทำงานด้วยครับ

และในแท็บ Intercept ให้เลือก Intercept เป็น Off

จากนั้นมาที่มือถือ Android โดยให้เข้าไปที่ Setting -› Wi-Fi กดค้างที่ Wi-Fi ที่เราต่อเอาไว้แล้วเลือก Modify network

เลือก Show Advanceed options ติ๊กเลือก Show advance options และเลือก Proxy เป็น Manual และใส่ค่าต่างๆ ดังนี้

Proxy hostname = ให้ใส่ IP ของเครื่องคอมฯ ที่เราติดตั้ง Burp Suite ไว้
Proxy port = ใส่หมายเลข port ที่เรากำหนดไว้ใน Burp Suite

จากนั้นกด Connect

ขั้นตอนถัดไปคือการติดตั้ง CA Certificate ของ Burp Suite ลงในเครื่อง Android ให้เราพิมพ์ URL http://burp บนบราวเซอร์ของ Android และคลิกที่ปุ่ม CA Certificate เพื่อทำการดาวน์โหลด เมื่อทำการดาวน์โหลดมาแล้วจะได้ไฟล์ชื่อ cacert.der ให้ทำการเปลี่ยนนามสกุลของไฟล์เป็น cacert.cer

ทำการติดตั้ง CA Certificate โดยเข้าไปที่ Setting -› Advanced settings -› Security และเลือก Install from SD card

เลืกไฟล์ cacert.cer และทำการตั้งชื่อ Cartificate name

ที่หน้า Setting -› Advanced settings -› Security คลิกที่แท็บ Trusted credentials และเลือกแท็บ User จะเห็นว่ามี CA Certificate ใหม่ของเราติดตั้งไว้แล้ว เป็นอันเสร็จเรียบร้อย

ต่อไปมาเริ่มทำการทดสอบกันเลยครับ ว่ามันสามารถดักข้อมูลที่วิ่งผ่าน HTTP/HTTPS ได้จริงไหม โดยให้เปิดบราวเซอร์และพิมพ์ url ที่เป็น HTTPS ลงไป ในตัวอย่างก็เทสจากเว็บผมเองนี้หละ จะเห็นว่า HTTPS ก็ยังเป็นสีเขียวอยู่

กลับมาดูที่หน้า Burp Suite ในแท็บ HTTP history จะเห็นว่ามีข้อมูลที่วิ่งไปยังเว็บของเราแล้ว

ทีนี้ลองเปิดแอพบน Android ขึ้นมาครับ ตัวอย่างนี้ผมเลือกใช้แอพของไปรษณีย์เพราะอยากรู้ว่าเขาส่งข้อมูลไปตรวจสอบสถานะของพัสดุที่ไหน โดยลองกรอกรหัสที่ใช้ตรวจสอบพัสดุ EMS ลงไปดูนะครับ หรือหากใครจะลองแอพตัวอื่นก็ได้เช่นกัน เอาจากของไทยๆก่อนนี้หละครับ ง่ายดี

กลับมาดูที่หน้า HTTP history จะเห็นว่ามีข้อมูลวิ่งที่ยังเซิฟเวอร์ของไปรษณีย์ไทยแล้วครับ (อ้าว มี username กับ password ติดมาด้วย อันนี้ไม่ได้ตั้งใจ อยู่นอกเหนือจากที่ผมคิดไว้ ฮาาา)

Kitt: Intel® Optimized LINPACK Benchmark on Debian and Ubuntu

21 February, 2017 - 04:43
Got a chance to grab 8 dedicated servers. All of them are identical configuration. Intel Xeon E5-2660 2.20 GHz – 8 Core / 16 Threads 16GB (DDR3) Memory 240GB (SSD) Storage 1 Gbps Network Port And I put Debian on 2 of them and Ubuntu 2 of them. Since I use these servers for computation, I tested … Continue reading Intel® Optimized LINPACK Benchmark on Debian and Ubuntu →

Kitt: CPU overloaded by kidle_inject ?

21 February, 2017 - 04:42
As it’s named, kidle_inject is a process to inject idleness to processors. On a good day, this will keep idle your processors, lower processor temperature, and save your battery. On a bad day, it will consume your processor somewhat like 50%+ on all cores, slow down your laptop, and drain your battery. But, you can … Continue reading CPU overloaded by kidle_inject ? →