SSLUtilities : Accept All Certificate in Java

Acception Self-Signed SSL Certificates in Java

Approach 1:  สร้าง SocketFactory ขึ้นมาใหม่

Class 1: NativeTrustManager
สร้าง TrustManager โดยที่ไม่มีการ throw Exception ออกมาเมื่อมีการทำ self-singed SSL certificate
Continue reading “Acception Self-Signed SSL Certificates in Java” »

OpenSSH Security with Fake banner in FreeBSD

โดยปกติแล้วเจ้าเซอเวอร์ของเรามันจะโชว์เวอร์ชันของ ssh โดยจะบอกทั้งเวอร์ชั่น ระบบปฏิบัติการ ทำให้เป็นเป้าหมายของเหล่า hacker สามารถค้นหาและสามารถเล่นงานได้โดยง่าย การทำ fake banner เป็นการเปลี่ยนรายละเอียนของโปรแกรมหรือเซอร์วิส เพื่อให้แสดงข้อมูลอย่างที่เราต้องการ ในตัวอย่างนี้ผมจะทำการเปลี่ยน banner ของ service OpenSSH ที่ลงในระบบปฏิบัตการ FreeBSD

โดยค่าปกติของ SSH Banner เป็นค่า SSH-2.0-OpenSSH_4.5p1 โดยเราจะเปลี่ยนให้เป็นค่า SSH-2.0-JiramotService

โดยทำการเข้าไปแก้ไฟล์ซอร์ส versioh.h ของ OpenSSH โดยใน FreeBSD จะอยู่ที่

/usr/scr/crypto/openssh/

จากนั้นแก้ให้เป็น

#define SSH_VERSION (ssh_version_get()) #define SSH_RELEASE (ssh_version_get()) #define SSH_VERSION_BASE “JiramotService” #define SSH_VERSION_ADDENDUM “JiramotInfo”

ทำการบันทึก จากนั้นรีคอมไฟล์ โดยไปที่

/usr/src/secure/lib/libssh

make [...]

Apache Security with Fake Banner

เพื่อเป็นการป้องการกันโจมที apache server โดยการทำ Fake banner ของ apache service

/etc/httpd/conf/httpd.conf            ; redhat distro

ServerTokens Full,OS,Minor,Minimal,Major,Prod

ServerTokens Setting ProductOnly Server: Apache Major Server: Apache/2 Minor Server: Apache/2.0 Minimal Server: Apache/2.0.55 OS Server: Apache/2.0.55 (Debian) Full (or not specified) default Server: Apache/2.0.55 (Debian) PHP/5.1.2-1+b1 mod_ssl/2.0.55 OpenSSL/0.9.8b

ถ้าจะแก้ไข header :  กรณีที่ต้องการเปลี่ยน banner ไปเลย

[...]

ป้องกัน dictionary attack ssh ด้วย SSHGuard

freeBSD โดยปกติแล้วจะไม่ให้ทำการ ssh ด้วย root เพราะว่าจะทำให้โดน brute force ssh เข้ามาได้โดยง่าย เพื่อความปลอดภัยแล้วจึงควรลง sshguard เพื่อกันไว้อีกชั้นก็ดี $cd /usr/ports/security/sshguard-ipfw $make install แล้วไปทำการแก้ไฟล์ /etc/syslogd.conf บรรทัดที่เขียนว่า #auth.info;authpriv.info |exec /usr/local/sbin/sshguard ให้นำ # ออกไป $vi /etc/syslogd.conf จากนั้นทำการ reload โดยการ $/etc/rc.d/syslogd reload โดยระบบจะเก็บ log อยู่ที่ /var/log/auth.log

จากนั้นก็ลอง login แล้วกรอกรหัสผิด 4 ครั้ง ระบบก็จะทำการ block ip เราไปชั่วคราว