มกราคม 19, 2021, 06:42:16 AM *
ยินดีต้อนรับคุณ, บุคคลไม่รู้ว่าใคร กรุณา เข้าสู่ระบบ หรือ ลงทะเบียน

เข้าสู่ระบบด้วยชื่อผู้ใช้ รหัสผ่าน และระยะเวลาในเซสชั่น
หน้า: [1]   ลงล่าง
  พิมพ์  
--สอนHACKING WITH JAVASCRIPT--  (อ่าน 2714 ครั้ง)
ไร้คอนเซปต์ *** ออฟไลน์ ออฟไลน์ เพศ: ชาย พลังสะสม: 1669
พฤษภาคม 09, 2007, 03:37:47 PM
ผลงาน: 193
2t
แฟนคลับ
ไร้คอนเซปต์
***

ผลงาน: 193
ออฟไลน์ ออฟไลน์

เพศ: ชาย
พลังสะสม: 1669

เว็บไซต์
« เมื่อ: พฤษภาคม 09, 2007, 03:37:47 PM »
--HACKING WITH JAVASCRIPT--
สำหรับบทความนี้จะเป็นการนำเสนอว่าทำไม javascript สามารถเป็น bypass ใน simple
/advanced html form และทำยังไงถึงจะทำได้ และ javascript ยังสามารถลบล้าง
cookie/session ที่เป็นจริงได้อีกด้วย
แบบฟอร์มธรรมดาในเว็ปเพจ
1. พึ้นที่ที่ต้องการ password
แน่นอนว่าคุณได้เคยพานพบกับเว็ปเพจที่ต้องการให้คุณกรอกข้อมูลที่อย่างก่อนที่จะ
submit. มีความเป็นไปได้สูงว่าเราสามารถจะ bypass มันได้ในบางเว็ปเพจ. ลองเปีด
source ของเว็ปเพจนั้นดูครับ และไล่ลงมาดูตรงที่ ฟอร์มโค้ด, สังเกตตรงที่ onsubmit
attribute, หวังว่าตอนนี้คุฯคงมีความรู้ด้าน javascript มากพอนะครับ.
เราสามารถใช้ประโยชจาก javascript ในทุกๆหน้าได้ครับ
ไม่ว่าจะเป็นการเปลี่ยนแปลงข้อมูล, การลบข้อมูล,
หรือการเพี่มส่วนสำคัญในเว็ปนั้นๆครับ. ในบทความนี้ ผมจะพูดถึงการเคลียร์ onSubmit
attribute.
โดยปรกติแล้ว onsubmit attribute จะชี้การทำงานไปยัง function
ที่ทำการตรวจสรอบว่าฟอร์มได้ทำการกรอกอย่างครบถ้วน และ ถูกต้องหรือไม่. Function
ที่ทำงานอาจคล้ายแบบนี้ครับ
function formSubmit(x)
{
if(x.email.value=="") return false;
return true;
}
...
<form name="spamform" method=post action="process.php" onsubmit="return
formSubmit(this);">
...
</form>
ผมจะไม่พูดถึงรายระเอียดมากนักว่าการทำงานของ formSubmit
จากตัวอย่างข้างบนนั่นว่าเป็นยังไง. คนควรรู้ว่าถ้าหากว่า textfield/ optionfield
/option/ ว่างเปล่า, ฟอร์มจะไปถูกส่งไปยัง  process.php. เอาล่ะ
กลับมาสู่ความจริงกันเถอะ, ทำยังไงถึงจะสามารถเปลี่ยนแปลงฟอร์มเพื่อให้ onsubmit
return true ตลอดเวลา. หนทางที่จะเข้าสู่การทำลายล้างฟอร์ม(?) คือการใช้ javascript
ครับ
document.forms
  • .onsubmit="return true;";
หรือ
document.spamform.onsubmit="return true;";
queries ทั้งสองอาจอนุญาติให้คุณ submit ฟอร์มโดยไม่มีการกรอกข้อมูล,
ความลับก็คือทำยังไงถึงจะ execute ได้.
ผมใช้ browser's Location bar. สิ่งที่คุณจะทำก็คือ นำข้อความข้างล่างนี้ไปแปะที่
location bar แล้ว hit enter
javascript:document.spamform.onsubmit="return true;";
ข้อคำสั่งข้างบนนั้นอาจไม่ทำงานเพราะว่า query จะคืนค่าให้ javascript และ
javascript ก็ไม่รู้ว่าจะทำอะไรกับมัน. เราต้องการหาหนทางใช้ค่าที่เราต้องการ และ
หนีจากการ dump ทางหน้าจอ...ใช้งาน javascript.alert() ครับ
javascript:alert(document.spamform.onsubmit="return true;");
และเราก็จะเห็น alert box ที่ return true แทนที่การ dump ค่าของ javascript ทาง
web browser. คุณสามารถใส่ค่าอะไรก็ได้ใน spam form ในขณะที่คุณ executed query
ข้างบนนั่น.
2. เปลี่ยนค่าของฟอร์ม
หากคุณเตรียมการที่จะเปลี่ยนฟอร์ม onsubmit attribute เพื่อจุดประสงศ์อันไม่ดี(?),
แต่ว่า อะไรคือข้อจำกัด? แน่นอนว่าตอนนี้คุณสามารถเปลี่ยนแปลงอะไรก็ได้ใน onsubmit
attribute . อีกอย่างที่ทำได้
javascript:alert(document.spamform.fieldname.value="Hacked By LaoCERT!");
หรือ
javascript:alert(document.forms
  • .fieldname.value="Hacked By LaoCERT!");
และแน่นอน คุณก็รู้, รึว่าไม่? คุณสามารถเปลี่ยนค่าอะไรก็ได้ในฟอร์มไม่ว่าจะเป็น
radio button, checkboxs, selects, hidden values, button และ อื่นๆอีกมากมาย

เห็นอย่างนี้แย้วจะหาทางป้องกันงัยก็รีบป้องกันนะจ๊ะ

posted by keztudio

ผ่านพ้นคืนวันที่ทำเพื่อชาติ
อีกกี่วันคืนจะได้ทำเพื่อตัวและหัวใจ
ขั้น 3 : ซุปเปอร์สตาร์ ** ออฟไลน์ ออฟไลน์ เพศ: ชาย พลังสะสม: 568
พฤษภาคม 09, 2007, 10:09:47 PM
ผลงาน: -56
[V]inle[P]rince
ขั้น 3 : ซุปเปอร์สตาร์
**

ผลงาน: -56
ออฟไลน์ ออฟไลน์

เพศ: ชาย
พลังสะสม: 568

I'm lovely C.C.

« ตอบ #1 เมื่อ: พฤษภาคม 09, 2007, 10:09:47 PM »
-*-
ลองเอาไปใช้กับเวปผมแล้ว
ผลที่ได้คือ ..แป่ว... ไม่มีอะไรเกิดขึ้นเลยแฮะ
หน้า: [1]   ขึ้นบน
  พิมพ์  
 
กระโดดไป:  

Powered by MySQL Powered by PHP Valid XHTML 1.0! Valid CSS!