• September 7, 2018
    แก้ที่  index.php บรรทัดที่ 104
    ให้disable

    โค๊ด: [Select]

    //header('X-Frame-Options: SAMEORIGIN');
    และเพื่อความปลอดภัย ให้เปลี่ยน ออพชั่นเป็น

    โค๊ด: [Select]

    header('X-Frame-Options: ALLOW-FROM http://www.cymiz.com/');
    เท่านี้เว็บ เราก็ดึง board ไปโชว์ในเว็บได้เเล้ว

    อันนี้ใช้ได้ อนุญาตทั้งหมด

    โค๊ด: [Select]

    header('X-Frame-Options: ALLOW');
    อันนี้ใช้ได้ ถ้าใส่ www จะไม่ได้ (แล้วแต่การตั้งค่าของเว็บ)

    โค๊ด: [Select]

    header('X-Frame-Options: ALLOW-FROM http://cymiz.com/');

    How to defend against Clickjacking (PHP)

    จากบทความ (How to demonstrate ClickJacking with Jack) เราสามารถป้องกันการโจมตี “Click-jacking” ได้โดยโดยใช้ “X-Frame-Option” หรือ “Content-Security-Policy” โดยหลักการคือทาง “Server” เราจะต้อง “Set” ให้สามารถส่ง “Header” และค่าที่ต้องการไปยัง “Web Browser” และจากนั้น “Web Browser” จะประมวลผลเองว่าจะให้แสดงหรือไม่แสดงข้อมูลใน <iframe> ได้หรือไม่

    โดยหลัก แต่ละค่ามีความหมายดังต่อไปนี้

    DENY: เว็บไซต์ที่ใช้ <iframe> จะไม่ถูกแสดงข้อมูล
    SAMEORIGIN: เว็บไซต์ทีมี “URL” หรือ “Domain” หรือ “IP” เดียวกันจะสามารถแสดงข้อมูลใน <iframe> ได้ถ้าต่างกันข้อมูลใน <iframe> จะไม่แสดงผล
    ALLOW-FROM: เว็บไซต์ที่กำหนดไว้ จะสามารถแสดงข้อมูลใน <iframe> ได้

    ALLOW-FROM
    จากหน้า “Login” ของ “SAMEORIGIN” ให้เปลี่ยนเป็น “Source” ที่เราอนุญาต

    โค๊ด: [Select]

        <?php
    //header( 'X-Frame-Options: SAMEORIGIN' );
    header("X-Frame-Options: ALLOW-FROM http://172.16.112.133");
    ?>

    DENY
    จากหน้า “Login” ลองเปลี่ยน “Header” เป็น “DENY”

    โค๊ด: [Select]

    <?php
    // Firefox 3.6.9+, Chrome 4.1+, IE 8+, Safari 4+, Opera 10.5+
    //header( 'X-Frame-Options: SAMEORIGIN' );
    //header("X-Frame-Options: ALLOW-FROM http://172.16.112.133");
    header("X-Frame-Options: DENY");
    ?>

    PHP – Content-Security-Policy
    เราสามารถใช้ “Content-Security-Policy” ได้เช่นเดียวกับ “X-Frame-Options” ดังนี้ (ทดลองใช้ self ซึ่งผลลัพท์ คือ “SAMEORIGIN”

    โค๊ด: [Select]

    <?php
    //header( 'X-Frame-Options: SAMEORIGIN' );
    //header("X-Frame-Options: ALLOW-FROM http://172.16.112.133");
    //header("X-Frame-Options: DENY");

    //DENY
    //header("Content-Security-Policy: frame-ancestors 'none'");

    //SAMEORIGIN
    header("Content-Security-Policy: frame-ancestors 'self'");

    //ALLOW-FROM White-Lists
    //header("Content-Security-Policy: frame-ancestors http://192.168.0.16 http://172.16.112.133");
    ?>

    เราสามารถกำหนดเป็น “White-list” สำหรับ “ip” หรือ “domain” ที่อนุญาตให้ “iframe” ถึงหน้าหรือข้อมูลของเราไปใช้ได้ ดังนี้

    โค๊ด: [Select]

    <?php
    //header( 'X-Frame-Options: SAMEORIGIN' );
    //header("X-Frame-Options: ALLOW-FROM http://172.16.112.133");
    //header("X-Frame-Options: DENY");

    //DENY
    //header("Content-Security-Policy: frame-ancestors 'none'");

    //SAME ORIGIN
    //header("Content-Security-Policy: frame-ancestors 'self'");

    //ALLOW-FROM White-Lists
    //Firefox 23+, Chrome 25+, Safari 7+, Opera 19+
    header("Content-Security-Policy: frame-ancestors http://192.168.0.16 http://172.16.112.133");
    ?>

    อ้างอิง
    http://blog.itselectlab.com/?p=3711

    สรุปคือ จะดึง iframe ได้ถ้า เรียกจากเว็บเดียวกัน เช่น
    vir9.com/ix เรียก vir9.com/forum ได้ แต่เรียก xxx.net/webboard ไม่ได้
    ต้องแก้บรรทัด 104 ให้ Allow

    ปัจจุบัน เว็บบราวเซอร์ต่าง ๆ ได้เพิ่มมาตรการป้องกันด้านความปลอดภัยเพิ่มมากขึ้น หนึ่งในมาตราการนั้นก็คือการรองรับ Security Headers ต่าง ๆ ที่ส่งมาจากเว็บเซิร์ฟเวอร์

    หนึ่งใน Security Headers ที่ผู้ดูแลเว็บไซต์ไม่ควรละเลยก็คือ X-Frame-Options ซึ่งเป็น HTTP Response Header ที่ใช้กำหนดนโยบายว่าจะอนุญาตให้เว็บบราวเซอร์แสดงผลหน้าเว็บของเราภายใน frame จากเว็บไซต์อื่นได้หรือไม่ครับ

    ซึ่งการไม่กำหนดนโยบายดังกล่าวแล้วอนุญาตให้เว็บไซต์ใด ๆ สามารถแสดงผลหน้าเว็บของเราใน frame ของเว็บไซต์อื่นได้ ก็เป็นการเปิดช่องให้ผู้ไม่ประสงค์ดีทำการโจมตีด้วยวิธี Clickjacking ได้

    https://www.owasp.org/index.php/Clickjacking_Defense_Cheat_Sheet

    อัพเดทบอร์ดของac108 เป็น SMF 2.09แล้ว เว็บอื่นใช้ <iframe> ไม่ได้ทำไงดี
    http://www.ac108.com/forum_thai/index.php?topic=1600.0



เวอไนน์ไอคอร์ส

ประหยัดเวลากว่า 100 เท่า!






เวอไนน์เว็บไซต์⚡️
สร้างเว็บไซต์ ดูแลเว็บไซต์

Categories


Uncategorized