เว็บไซต์ฝั่งนักศึกษา
เว็บไซต์ฝั่งอาจารย์
นี่เป็นโปรเจกต์ Thesis ของเราในปีที่ 4 หรือโปรเจกต์ที่เราต้องทำเพื่อสำเร็จการศึกษานั่นเอง โดยที่มาของโปรเจกต์นี้เนี่ยเกิดจากว่าเราได้คุยกับอาจารย์ที่ปรึกษาโปรเจกต์แล้วอาจารย์บ่นว่าอยากให้นักศึกษาทำ thesis (ของวิศวะคอม ยังไงก็ต้อง coding นะ) เนี่ย คำถึง security coding สักหน่อย และเราก็เลยคิดว่าเราอยากทำเรื่องนี้ เพราะเดี๋ยวนักศึกษาจะต้องเข้าสู่ตลาดแรงงาน การเขียนโค้ดให้ปลอดภัยนั้นเป็นสิ่งที่สำคัญมาก ป้องกันการโจมตีจากผู้ไม่หวังดี และเพิ่มความปลอดภัยให้กับองค์กร
เราจึงได้ออกแบบระบบดังนี้ เราจะไม่ตรวจหาช่องโหว่ของโค้ดเอง แต่จะใช้ Tool ที่มีอยู่ในปัจจุบันที่เป็นที่น่าเชื่อถือและใช้กันทั่วไปในองค์กร โดยใช้ Sonarqube สำหรับตรวจ source code และ Nuclei สำหรับตรวจ URL (Website ที่ทำการ deploy แล้ว) และนักศึกษาสามารถสแกนกี่ครั้งก็ได้จนกว่าจะพอใจ เลือกครั้งสแกนและกดส่งไปให้อาจารย์ได้เลย ในส่วนฝั่งของอาจารย์จะเห็นเฉพาะกลุ่มที่อาจารย์เป็นที่ปรึกษาอยู่เท่านั้น และทำการตรวจผลลัพธ์ที่นักศึกษาส่งมา
เราได้เริ่มเลือก framework ที่ใช้ เราใช้ NuxtJs และ NestJs ออกแบบ diagram ต่าง ๆ เช่น ER diagram, Use case diagram, Sequence diagram, UX/UI design เราเริ่มโดยนำ Tool ต่าง ๆ ที่เราใช้มารันใน server และเชื่อม api ส่งไป scan และส่งผลลัพธ์การสแกนกลับมา ในส่วนหน้าเว็บ เราเริ่มจากเว็บไซต์ฝั่งนักศึกษา(ในเทอม 1) และเว็บไซต์ฝั่งอาจารย์(ในเทอม 2) ได้ให้เพื่อน ๆ และอาจารย์เข้ามาทดลองใช้งานและให้คำแนะนำ