ก๊วนซอฟท์แวร์ </softganz> SoftGang (Gang Software)

Web &amp; Software Developer Gang.

617 items|« First « Prev 48 49 (50/62) 51 52 Next » Last »|
โดย Little Bear on 23 ก.ค. 52 12:46

จากการที่ VPS ของเจียถูก hack เมื่อวันก่อน ซึ่งใช้เวลาหลายวันเหมือนกัน กว่าจะแก้ไขได้ วันนี้ไปอ่านเจอวิธีการแก้ไข-ค้นหา cgi ทำงาน จาก THT ขอบันทึกไว้ก่อน

หา cgi ทำงาน
find /home/*/domains/*/public_html/cgi-bin/ -iname \*.cgi -ls
find /home/*/domains/*/public_html/cgi-bin/ -iname \*.pl -ls
find /home/*/domains/*/private_html/cgi-bin/ -iname \*.cgi -ls
find /home/*/domains/*/public_html/cgi-bin/ -iname \*.pl -ls
หรือ
ps aux|grep cgi
เสร็จแล้ว
lsof -p process_id
โดยใช้ process ID ที่เราได้มาจากคำสั่ง ps aux ครับ เราจะได้รู้ว่า script ที่ถูกฝังนั้น มาจาก virtual host ไหน จากนั้นก็เข้าไปทำการปิด cgi ซะ
โดย Little Bear on 17 ก.ค. 52 03:38

VPS ที่เจียเช่าจากคุณเสกถูก hack เมื่อเดือนที่แล้ว (มิ.ย.) ซึ่งคาดว่าจะถูกขโมยรหัสผ่านของ ftp แล้วมีการแก้ไขไฟล์ index.html , index.php ซึ่งจากการตามหารายละเอียด ขั้นตอนน่าจะเป็น

  1. มีโทรจันมาฝังอยู่ในเครื่องที่ใช้สำหรับ upload file ด้วย ftp

  2. โทรจันส่งรหัสผ่านของ ftp ไปให้คนเขียน

  3. เมื่อได้รหัสผ่านของ ftp ไป ก็จะใช้ script ในการเข้าไปค้นหาไฟล์ที่ชื่อขึ้นต้นด้วย index.* จากทุก ๆ folder ใน server

  4. ทำการ download ไฟล์ index.* มาแล้วทำการแก้ไขโดยแทรกคำสั่ง tag iframe ไว้หลัง tag body ให้ไปดึง script มาจาก server ของตนเองให้มา run ในเครืองที่เปิดเข้าไปดูเว็บนั้น โดยกำหนด style ให้ visibility:hidden ซึ่งจะทำให้มองไม่เห็นใน browser

  5. ทำการ upload ไฟล์ที่ได้แก้ไขกลับขึ้นไปที่ server เหมือนเดิม

วิธีสังเกตุว่าเว็บเราติดเข้าไปแล้ว

  1. ตอนเปิดเว็บสังเกตุที่ status bar จะมีการ request ไปยังเว็บไซท์อื่นที่เราไม่เคยใส่ code ไว้

  2. ลอง view source ดู จะเจอคำสั่ง iframe ที่ src เป็นเว็บที่ต้องสงสัย ซึ่งที่เจอจะระบุหมายเลข port เป็น 8080

  3. หาก ssh เข้าไปที่ server แล้วสั่ง

find /home/*/domains/*/public_html/ -maxdepth 100 -name *index* -exec grep -H "iframe" {} ";" > iframe.txt

ลองดูผลลัพท์ในไฟล์ iframe.txt

ถ้าจะให้ดีก็ตั้งคำสั่งนี้ให้เป็น cron job ให้ค้นหาทุกวัน หากต้องการค้นหาเฉพาะไฟล์ที่มีการเปลี่ยนแปลงภายใน 24 ช.ม. ให้เพิ่ม option -mtime -1 ไปด้วย

ผลกระทบอีกอย่างที่ผมก็คาดว่ามันน่าจะเกิดขึ้น คือถ้ามีการ hack เข้ามา server ได้ ก็น่าจะมีการส่งโปรแกรมอะไรมาไว้ที่ server ด้วย เพื่อวัตถุประสงค์อื่น ๆ ที่อาจจะเป็นไปได้ เช่นการส่ง spam mail , การขโมยรหัสหรือข้อมูลอื่น ๆ ซึ่งช่วงก่อนผมหาไม่เจอ

3-4 วันที่ผ่านมา ก็สังเกตุเป็นว่ามี process ของ apache run perl และใช้ cpu เยอะมาก ลอง kill precess แล้ว ไม่นานก็มี process กลับมาใหม่

วันนี้ลองค้นหาดูใน cgi-bin ปรากฎว่ามี perl script อยู่จริง ๆ ด้วย อยู่ใน /home/ * /domains/ * /public_html/cgi-bin/ จึงลบมันทิ้งไป และ stop service apache กับ proftpd ไว้ก่อน

วิธี kill perl ทุก process ใช้คำสั่ง

for pl in `ps -A | grep perl | cut -c 1-6`; do kill -9 $pl;done

หลังจาก kill httpd ทั้งหมดแล้ว สักพัก process httpd ก็มาอีก คาดว่าน่าจะมาจาก crontab เลยลองเช็ค crontab ของทุก user ดูด้วยคำสั่ง

for u in `cat /etc/passwd | cut -d":" -f1`;do crontab -l -u $u;done

ก็ไม่เจออะไรผิดปกติ คงมีตัวไหนสักตัวที่สั่ง run httpd ขึ้นมา แต่ยังหาไม่เจอ

ตอนนี้ก็หลายนาทีแล้ว เจ้า perl script ยังไม่มา ไม่รู้ว่าจะหายไปตลอดกาลหรือเปล่า พรุ่งนี้เข้าค่อยมาดูอีกที

บาย... ไปนอนก่อนครับ.

Update 2009-07-18 08.28 PM process ของ perl มาอีกแล้ว มาเพียบด้วย สรุปว่ายังแก้ไม่ผ่าน

Update 2009-07-19 10.20 PM วันก่อนลืมเปลี่ยนรหัสผ่าน เข้ามาดูอีกทีปรากฎว่ามีการส่งไฟล์ .pl เข้ามาอีก แถม run script สัก 400 process ได้ กว่าจะ ssh เข้าไปได้ นานมาก ๆ เลยเปลี่ยนรหัสผ่านของทุก user (เท่าที่หาเจอ) เสียเลย

Update 2009-07-20 06.43 PM เข้าไปค้นหาใน log ยังคงมีการ upload ไฟล์เข้ามาในชื่อ sator4u (ไม่แน่ใจว่าได้เปลี่ยนรหัสผ่านหรือยัง) จึงเปลี่ยนรหัสผ่านใหม่ ดูเหมือนกับว่าจะมีไฟล์ .pl อยู่ในโฟลเตอร์ของ sator4u ด้วย จึงทำการเปลี่ยนชื่อ home folder เป็นชื่ออื่น ไปก่อน ป้องกันไม่ให้เรียก script มาทำงาน (ยังไม่ได้ลบทิ้ง)

Update 2009-07-21 06.36 AM หลังจากตามดูอยู่ 2 วัน ตอนนี้เหตุการณ์ทุกอย่างเป็นปกติแล้ว

โดย Little Bear on 13 ก.ค. 52 12:38

ฐานข้อมูลของ wintesla2003 บางตารางหายไปเฉย ๆ ไม่มีข้อมูลเหลืออยู่เลย เป็นฐานข้อมูลของหัวข้อพร้อมรายละเอียด

ความเสียหาย :

  • หัวข้อทุกหัวข้อสูญหาย
  • รายชื่อไฟล์อัพโหลดสูญหาย แต่ไฟล์ที่อัพโหลดไว้ยังคงอยู่

ปรับปรุง

  • กำลังทำการสำรองข้อมูลมาเก็บไว้ก่อน
  • ฐานข้อมูลดาวน์โหลดมาได้ไม่หมด

Update 2009-07-16

ได้ลองค้นหาบันทึกจาก log file พบว่าน่าจะพอนำข้อมูลมาจับคู่กันได้พอสมควร สิ่งที่ขาดหายไปคือการเชื่อมโยงระหว่าง fkey กับชื่อไฟล์ ได้ลองเขียนโปรแกรมเพื่อเชื่องโยงกัน ปรากฎว่าได้กลับมาประมาณ 230 records จากทั้งหมดประมาณ 600 กว่ารายการ และไม่แน่ใจด้วยว่าจะถูกต้องหรือเปล่า

คิดว่าอาจจะต้องใช้วิธีจับคู่ด้วยมือ โดยดูจากรายชื่อไฟล์+วันที่ของแต่ละ user แล้วนำไปจับคู่กับบันทึกของ logfile+watchdog ซึ่งแต่ละ user ก็มีไฟล์ไม่มากนัก น่าจะได้ผลดีกว่า

Update 2009-08-06

ใช้วิธีให้โปรแกรมช่วยจับคู่ให้ได้มา 200 กว่ารายการ ส่วนที่เหลือจับด้วยมือ จนเสร็จเรียบร้อย โดยส่วนที่จับด้วยมือจะได้ file key เป็นเลขใหม่

โดย Little Bear on 13 ก.ค. 52 00:32

เหตุเริ่มเกิดมาได้สัก 2-3 วันแล้ว แรก ๆ ก็เกิดกับบางเว็บ เช่น www.psu.ac.th แล้วก็เริ่มหลายเว็บมากขึ้น จนมาวันนี้ ping ไปทุกเว็บก็เป็นเหมือนกันหมด แม้กระทั่ง google.com

อาการ : เวลา ssh ไปที่ Server@CAT-HY แล้ว ping ไปที่ google.com จะเกิด error ดังนี้

ping: unknown host google.com

ก็พยายามหาทางดู ลอง reboot server แล้วก็ไม่หาย (เสียดายอุตส่าห์เปิดมาตั้ง 30 วันแล้ว) ลอง ssh เข้าไปทุก vps แล้ว ping ดู ก็เป็นเหมือนกัน เลยคิดว่าน่าจะมีปัญหาที่ proxmox-ve เลย ssh ไปที่ proxmox-ve แล้ว ping ดู ก็มีอาการเหมือนกัน

เลยตั้งเป้าว่า น่าจะเกิดจาก DNS ของ CAT (202.129.27.134 , 202.129.27.135) มีปัญหา คิดว่าพรุ่งนี้จะโทรไปหา CAT ให้เขาเช็คดูเสียหน่อยว่ามีปัญหาอะไรบ้างไหม?

ระหว่างนั้นก็คิดว่า หากเราเปลี่ยน DNS ไปใช้ของที่อื่น จะเกิดอะไรขึ้นบ้าง ก็เลยลองเสี่ยงดู โดยเพิ่ม nameserver 208.67.222.222 ซี่งเป็นของ OpenDNS เข้าไปใน /etc/resolv.conf โดยการแก้ไขไฟล์ /etc/resolv.conf เป็น/เพิ่ม

nameserver 208.67.222.222
nameserver 208.67.220.220

It's work!!!!!!

ขอบคุณ OpenDNS แล้วพรุ่งนี้ค่อยโทรไปสอบถาม CAT-HY อีกที.

ปล. Thank for idea from configuring DNS

โดย Little Bear on 12 ก.ค. 52 22:44
  1. Check what is the new hard disk device name with "fdisk -l", it shoul be something like /dev/sdb
  2. Create a partition on it, supose the disk is /dev/sdb: "echo -ne "n\np\n1\n\n\nw\n" | fdisk /dev/sdb1"
  3. Make a filesystem on the partition: mkfs.ext3 /dev/sdb1
  4. Create a directory where to mount the partition: mkdir /newdirectory
  5. Edit fstab an add at the end of the file:
    /dev/sdb1  /newdirectory  ext3  defaults 0 0
  6. now mount:
    mount -a

ps. echo -ne part? is

  1. n -> new partition
  2. p -> primary partition
  3. 1 -> number of the partition
  4. just enter, here you should enter the first block
  5. just enter, here you should enter the last block
  6. write the partition table to the disk.
โดย Little Bear on 12 ก.ค. 52 11:22

Specification

Processors    Intel® Atom™ Processor A330 1.60GHz, 533MHz FSB, 1MB L2 Cache)
Operating system  DOS
Memory  2GB DDR2 SDRAM
Hard disk  320GB SATA HDD
Optical device  Dual Layer Multiburner Drive (DVD-RW)
Graphics  ATI Mobility Radeon™ HD 4530 with 512MB
Display  20" LCD
Warranty  1-year On-site Warranty
Port 10/100 LAN , 6 USB , 1394 mini , mic , line-out
WIFI 54G

Price ฿16,900. (not inclode VAT)

โดย Little Bear on 8 ก.ค. 52 00:06

เห็นข่าวว่ากำลังทำอยู่นานพอสมควรแล้ว คราวนี้ก็เป็นการประกาศว่ากำลังมีการวางจำหน่ายปลายเดือนนี้ (กค.52) ราคาไม่เกิน $300. น่าสนใจ

หากเข้าเมืองไทย ก็อยากได้สักเครื่อง เอามาใช้แทน Notebook น่าจะดีกว่าแบกเครื่อง 4 กก.มากเลย...

ที่มา blognone.com via GottaBeMobile via SlashGear

โดย Little Bear on 7 ก.ค. 52 11:33

มีการรวบรวมคำสั่ง(เครื่องมือ)สำหรับผู้ดูแล server/website ควรรู้เอาไว้ พร้อมทั้งรายละเอียดและตัวอย่างการใช้งาน บางคำสั่งก็สามารถใช้งานได้เลย บางคำสั่งต้องติดตั้งเพิ่มเติม

คำสั่งทั้งหมดคือ

  1. top - Process Activity Command
  2. vmstat - System Activity, Hardware and System Information
  3. w - Find Out Who Is Logged on And What They Are Doing
  4. uptime - Tell How Long The System Has Been Running
  5. ps - Displays The Processes
  6. free - Memory Usage
  7. iostat - Average CPU Load, Disk Activity
  8. sar - Collect and Report System Activity
  9. mpstat - Multiprocessor Usage
  10. pmap - Process Memory Usage
  11. netstat - Network Statistics
  12. ss - Network Statistics
  13. iptraf - Real-time Network Statistics
  14. tcpdump - Detailed Network Traffic Analysis
  15. strace - System Calls
  16. /Proc file system - Various Kernel Statistics
  17. Nagios - Server And Network Monitoring
  18. Cacti - Web-based Monitoring Tool
  19. KDE System Guard - Real-time Systems Reporting and Graphing
  20. Gnome System Monitor - Real-time Systems Reporting and Graphing

ดูรายละเอียดการใช้ได้จากที่มานะครับ

ที่มา 20 Linux System Monitoring Tools Every SysAdmin Should Know

โดย Little Bear on 5 ก.ค. 52 20:27

เพื่อป้องกันปัญหาโดน hack จากต่างประเทศ มีคำแนะนำให้ block การเข้าถึงจากต่างประเทศด้วยการ block IP จากต่างประเทศไม่ให้เข้าใช้บริการบางอย่างเช่น FTP , SSH

วิธีการดูได้จาก ThaiHostTalk นะครับ

ขออนุญาตคุณ icez และ ems นำมาเก็บไว้ก่อนนะครับ แล้วจะหาเวลามานั่งศึกษาดูอีกที

โดย Little Bear on 27 มิ.ย. 52 10:47

วันก่อนมี 50+ PHP optimisation tips revisited วันนี้ก็มีเทคนิคในการทำเว็บไซท์ให้เร็วขึ้นด้วยหลากหลายวิธีจาก Google เป็นการรวบรวมไอเดียดี ๆ จากนักพัฒนาถึงเทคนิควิธิการในการทำเว็บให้เร็วขึ้น

ไปดูกันได้ที่ Let's make the web faster มีทั้ง บทความ ดีๆ และ โปรแกรมให้ ดาวน์โหลด ไปลองศึกษากัน

617 items|« First « Prev 48 49 (50/62) 51 52 Next » Last »|