Bash Bash Bash เต็มไปหมด…

ไมโครซอฟท์ปล่อยอัพเดต Windows 10 Anniversary Update แล้ว ถึงเวลาลอง bash shell บนวินโดวส์แล้วสิ… ติดตั้ง Windows 10 Anniversary ทำได้สองทาง หากใช้ Windows 10 อยู่แล้วก็ Windows update ได้เลย (รุ่น Professional อาจยังไม่มีให้ update) ต้องการติดตั้ง Windows 10 ใหม่ โหลดที่ https://licensing.psu.ac.th/tag/anniversary/ เลือกเอาเลยจะเอารุ่น Professional หรือ Education (สำหรับนักศึกษาต้องเป็นรุ่น Education) ติดตั้งไปจนเสร็จเรียบร้อย ต้องเชื่อมต่อ Internet ตลอดเวลาที่ติดตั้ง!! คลิกขวาที่ปุ่ม start เลือก Programs and Features คลิก Turn Windows Features on or off เลือก Windows Subsystem for Linux (Beta) เมื่อติดตั้งเสร็จแล้ว ให้เปิด developer mode คลิกที่ start menu แล้วพิมพ์ deve จะได้ดังรูป แล้วเลือก for developers settings ได้ดังภาพเลือก Developer mode คลิก Yes อาจมีข้อความเตือนให้ restart ก็ restart ให้เรียบร้อย คลิกขวาที่ปุ่ม Start เลือก Command Prompt (Admin) พิมพ์ bash กด y แล้วกด enter จะเป็นการเริ่ม download รอจนครบ 100% ตั้ง username และ password เมื่อตั้งเสร็จเรียบร้อยก็พร้อมใช้งาน ทุกครั้งที่ต้องการใช้งานให้เรียก bash ได้ที่ปุ่ม start แล้วเลือก Bash on Ubuntu on Windows ทดสอบ ssh จบ… ขอให้สนุกครับ

Read More »

วิธีตรวจสอบเว็บไซต์ที่โดน Hack #18

ได้รับแจ้งจาก ThaiCERT ว่ามีเว็บไซต์ภายในโดเมนของมหาวิทยาลัย เผยแพร่ Code อันตราย ดังต่อไปนี้ จึงเข้าทำการตรวจสอบในเครื่องเว็บเซิร์ฟเวอร์ดังกล่าว พบการวางไฟล์ Backdoor ไว้ดังที่อธิบายใน วิธีตรวจสอบเว็บไซต์ที่โดน Hack #17 แล้ว แต่ที่เห็นผิดปรกติ ก็เป็นใน access.log ของ Apache ซึ่งพบว่า มีการเรียกใช้ xmlrpc.php เป็นจำนวนมาก ดังภาพ จากการตรวจสอบ พบว่า xmlrpc.php เป็นช่องทางให้สามารถเรียกใช้ Function ต่างๆผ่านทาง HTTP และเป็นช่องทางให้ App ต่างๆสามารถติดต่อกับ WordPress ได้ แต่ก็เป็นช่องทางให้เกิดการเดารหัสผ่านจำนวนมากได้เช่นกัน (Brute Force Attack) โดยสามารถทดลอง ส่ง XML ที่มีโครงสร้าตามที่ API กำหนด เช่น wp.getUsersBlogs [1][2][3] สามารถดูจำนวน Blog ที่ User คนนั้นๆเขียนขึ้นมา แต่ ต้องระบุ username/password ซึ่งตรงนี้จะเป็นส่วนที่ทำให้เกิดการ Brute Force ได้ ด้วยคำสั่งต่อไปนี้ เป็นการเดารหัสผ่านไปยัง http://localhost/blog/xmlrpc.php echo “<methodCall><methodName>wp.getUsersBlogs</methodName><params><param><value> <string>admin</string></value></param>  <param><value><string>password</string></value></param></params></methodCall>” | POST http://localhost/blog/xmlrpc.php หากสำเร็จ จะได้คำตอบมาอย่างนี้ หากเป็น WordPress รุ่นต่ำกว่า 4.0 เปิดให้ใช้ system.multicall ซึ่งทำให้สามารถเดารหัสผ่านจำนวนมาก ใน 1 Request ทำให้ระบบตรวจจับได้ยาก ดังนั้น หากไม่จำเป็นต้องใช้ xmlrpc.php ก็สมควรปิดการใช้งานที่ระดับ Apache โดยสร้างไฟล์ /etc/apache2/conf-enabled/xmlrpc.conf มีข้อมูลเป็น <FileMatch “xmlrpc\.php$”> Order Deny,Allow Deny from All </FileMatch> จากนั้น Restart Apache ก็สามารถปิดการทำงานได้ Reference [1] http://www.hackingsec.in/2014/08/wordpress-xml-rpc-brute-force-attack.html# [2] http://blog.dewhurstsecurity.com/2012/12/11/introduction-to-the-wordpress-xml-rpc-api.html [3] https://codex.wordpress.org/XML-RPC_WordPress_API

Read More »

การ upgrade PHP to new version on IIS ด้วยวิธีง่ายๆ

เคยเขียนบทความเกี่ยวกับการ upgrade PHP 5.2 to 5.3 ไปเมื่อปีที่แล้ว (Apache 2.2 + PHP 5.2 + phpMyAdmin on Windows 8.1) วันนี้ขอนำเสนอการ upgrade เวอร์ชั่นของ PHP บน IIS (Windows Server 2012 R2) ด้วยวิธีที่แสนจะง่ายดาย ***ใครทราบวิธีการแล้วก็ผ่านไปเลยนะคับ ^^ เขียนไว้เผื่อบางท่านที่ยังไม่รู้เนอะ ขั้นตอนการ upgrade check PHP เวอร์ชั่นที่เราใช้ปัจจุบันก่อนว่าเป็นเวอร์ชั่นอะไร ด้วยการสร้างไฟล์ phpinfo.php เก็บไว้ที่ web root แล้วเขียนโค้ดตามนี้ <?php phpinfo(); ?> 2. เปิดเว็บ http://localhost/phpinfo.php ในภาพจะเป็น php 5.6.2.2 3. เปิด IIS manager ขึ้นมา แล้วคลิกที่ Web Platform Installer 4. พิมพ์คำค้น PHP ในช่องค้นหา ในรูปเราจะติดตั้ง PHP 7.0.7 ให้คลิกที่ปุ่ม Add จากนั้นระบบจะทำการติดตั้ง PHP 7.0.7 5. เมื่อติดตั้งเสร็จแล้ว ให้คลิก Restart IIS 6. ตรวจสอบเวอร์ชั่นของ PHP ด้วยการเปิดหน้าเว็บ http://localhost/phpinfo.php ในภาพจะเป็น php 7.0.7 เรียบร้อยแล้ว 7. เสร็จสิ้นกระบวนการ upgrade PHP to new version

Read More »

วิธีตรวจสอบเว็บไซต์ที่โดน Hack #17

ปัจจุบันพบว่า รูปแบบของ Backdoor เปลี่ยนไป จากเดิมเป็น Base64 ซึ่งสามารถตรวจจับได้จาก Pattern ของ eval และ base64_decode ไปเป็น การใช้ eval ร่วมกับการใช้เทคนิคที่เรียกว่า Obfuscate หรือ การทำให้ PHP Code ปรกติ แปลงไปเป็นรูปแบบที่ซับซ้อนยิ่งขึ้น ทำให้การตรวจสอบด้วยเทคนิคเดิมไม่เจอ จาก วิธีตรวจสอบเว็บไซต์ที่โดน Hack #2 แสดงให้เห็นรูปแบบเดิม ดังภาพ จะเปลี่ยนมาเป็นแบบนี้ ดังนั้น อาจจะต้องปรับเปลี่ยนคำสั่งในการค้นหาเป็น find /var/www -name “*.php” -user www-data -type f | xargs grep GLOBAL แต่ก็พบว่า มีการซ่อน base64_decode ในรูปแบบนี้ก็มี ถึงแม้จะเลี่ยงการใช้ base64_decode ตรงๆแต่ก็ยังต้องใช้ eval อยู่ดี ดังนั้น จึงต้องใช้คำสั่งต่อไปนี้ในการค้นหา find /var/www -name “*.php” -user www-data -type f | xargs grep eval > eval.txt ซึ่งอาจจะได้ไฟล์มาจำนวนมาก ทั้งทีใช่และไม่ใช่ Backdoor เก็บไว้ในไฟล์ eval.txt ดังภาพ จึงต้องใช้วิธี แก้ไขไฟล์ eval.txt ดังกล่าว โดยลบบรรทัดที่ไม่ใช่ Backdoor ออก ให้เหลือแต่บรรทัดที่น่าสงสัยว่าจะเป็น Backdoor ไว้ แล้ว Save จากนั้นใช้คำสั่งต่อไปนี้เพื่อเก็บไฟล์ทั้งหมดไว้ก่อน ในไฟล์ suspect.tar.gz cut -d: -f1 eval.txt | xargs tar -zcvf suspect.tar.gz จากนั้น ทำ List ของไฟล์ที่ต้องเข้าตรวจสอบจริงๆ เก็บในไฟล์ชื่อ eval2.txt ด้วยคำสั่ง cut -d: -f1 eval.txt > eval2.txt แล้วจึงแก้ไขไฟล์ หรือ ลบทิ้งต่อไป

Read More »

สร้าง Form ลงทะเบียนออนไลน์ด้วย Google Form (รูปแบบใหม่) ให้ตอบรับผ่านทางอีเมลโดยอัตโนมัติ พร้อมปิด Form อัตโนมัติเมื่อครบเต็มจำนวน

จากที่ผมเคยได้เขียนวิธีการสร้างแบบฟอร์มลงทะเบียนออนไลน์ด้วย Google Form ให้ตอบรับผ่านทางอีเมลโดยอัตโนมัติ มาวันนี้ ทาง Google ได้เปลี่ยนรูปแบบการสร้าง Form ใหม่ทั้งหมด จึงทำให้วิธีการสร้างแบบฟอร์มออนไลน์แบบเก่านั้นใช้ไม่ได้อีกแล้ว ดังนั้นเรามาดูวิธีการสร้าง Google Form แบบใหม่กันดีกว่าว่าเป็นอย่างไร ซึ่งต้องขอบอกว่า “มันง่ายมากๆ” 1. คลิก Google Forms  เพื่อสร้างแบบฟอร์มลงทะเบียนออนไลน์ 2. ใส่รายละเอียด ข้อมูล รูปแบบ ในแบบลงทะเบียนตามที่ต้องการ (รูปแบบใหม่สามารถใส่ภาพที่เราออกแบบไว้ได้แล้วนะครับ โปสเตอร์ แบนเนอร์ ต่างๆ) + เราสามารถแบ่ง Form ของเราออกแบบเป็นหลายๆ section ได้นะครับ กรณีที่มีข้อมูลให้ต้องกรอกจำนวนมาก 3. ติดตั้ง Add ons… Add ons ที่ผมจะติดตั้งนั้น มีด้วยกัน 2 อย่าง ดังนี้ A. Form Confirmation Emails  คือ ระบบตอบรับการลงทะเบียนผ่านทางอีเมลอัตโนมัติ เมื่อผู้ใช้ลงทะเบียนผ่านฟอร์มเรียบร้อยแล้ว ระบบจะส่งเมลตามที่เราตั้งค่าไว้ไปให้ทางอีเมลที่ระบุไว้ B. FormLimiter  คือ การปิดแบบฟอร์มลงทะเบียนอัตโนมัติ เมื่อมีผู้ใช้ลงทะเบียนครบตามจำนวนที่กำหนดไว้ เมื่อติดตั้งเสร็จเรียบร้อยจะมี icons เพิ่มขึ้นมา ดังภาพ 4. กำหนดรูปแบบการส่งเมลตอบรับอัตโนมัติ แบบฟอร์มตัวอย่างที่นำเสนอนั้น มีช่องให้ใส่ข้อมูล 3 อย่าง ดังภาพ (แนะนำให้ตั้งชื่อ Field ให้เป็นภาษาอังกฤษครับผม) เริ่มต้นตั้งค่า คลิกเลือก Form Confirmation Emails > Configure confirmations จากนั้นจะมีกล่องขึ้นมาให้มุมล่างขวา เพื่อให้กำหนดค่าต่างๆ คลิกเลือก Send Confirmations  กำหนดชื่อผู้ส่ง และรูปแบบการส่งเป็น E-mail <คลิก Continue> Email subject กำหนดชื่อหัวข้อของเมลที่ต้องการส่ง Email body เป็นการกำหนดรูปแบบของข้อมูลที่จะส่งไป ซึ่งจะอยู่ในรูปแบบของ HTML (สามารถดูตัวอย่างจาก Code ด้างล่าง) ถ้าใครมีรูปแบบอื่นก็สามารถทำได้ครับ ผมทำแบบง่ายๆ เมื่อกำหนดรูปแบบเสร็จเรียบร้อยแล้ว กดปุ่ม Save เป็นอันเสร็จสิ้น <html> <head> <meta charset=”UTF-8″> <title>TELL ME MORE PSU</title> </head> <body> <p>เรียนคุณ: ${“Name-Surname”}</p> <p> <br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ตามที่ท่านได้สมัครเข้าร่วมอบรม หลักสูตร TOEIC (เตรียมความพร้อมการสอบ)<br> <br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style=”color: #FF0004″><strong>กลุ่มที่ 2  หลักสูตร TOEIC นักศึกษาระดับปริญญาตรี และระดับบัณฑิตศึกษา<br> </strong></span><strong>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ณ ห้องอบรม 1 ชั้น 8  อาคารศูนย์ทรัพยากรการเรียนรู้ (LRC1)</strong><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style=”color: #FF0004″><strong>เริ่มเรียน : 13 กรกฎาคม – 4 สิงหาคม 2559 (เวลา 13.30 – 15.30 น.)</strong></span><br><br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style=”color: #0099FF”>เพื่อเป็นการยืนยันสิทธิ์เข้ารับการอบรม<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;กรุณาตอบกลับผ่านทาง E-mail :</span> tmmpsu@gmail.com</a> ด้วยค่ะ<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(ภายในวันที่ 11 กรกฎาคม 2559 หรือจนกว่าครบตามจำนวนที่กำหนด) รับจำนวน 25 คนเท่านั้น <br> <br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong style=”color: #FF0004″>ขอสงวนสิทธิ์ให้กับผู้ที่ได้ยืนยันสิทธิ์ในการเข้าอบรมผ่านทางอีเมลก่อน</strong><br> <br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style=”color: #FF0004″><strong>ติดตามการประกาศรายชื่อผู้มีสิทธิ์เข้าร่วมอบรมโครงการอีกครั้งได้ที่: </strong></span><a href=”http://clpd.psu.ac.th/” target=”_blank”>http://clpd.psu.ac.th/</a><br> <br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;หากมีข้อสงสัยใดๆ สามารถสอบถามเพิ่มเติมได้ที่ หมายเลขโทรศัพท์ 0-7428-9207<br> <br> <br> ขอบคุณสำหรับการเข้าร่วมโครงการค่ะ<br> <br> ศูนย์ส่งเสริมและพัฒนาการเรียนรู้ มหาวิทยาลัยสงขลานครินทร์<br> โทรศัพท์ : 0-7428-9207<br>

Read More »