Tags:

บริษัทด้านความปลอดภัย Fortify Software ได้ออกมาเตือนว่าค้นพบรูรั่วในชุดพัฒนา AJAX เกือบทุกยี่ห้อ

Fortify Software เรียกรูรั่วนี้ว่า JavaScript Hijacking แนวคิดของมันคือถึงแม้ว่า X ใน AJAX จะหมายถึง XML ที่ใช้เป็นสื่อกลางในการส่งข้อมูล แต่เอาเข้าจริงแล้ว AJAX ก็ไม่จำเป็นต้องใช้ XML เสมอไป อาจส่งข้อมูลเป็น HTML, text หรือ JavaScript (ในที่นี้คือ JSON) ก็ได้ ซึ่งถ้าเป็น XML หรือ HTML แล้ว เว็บเบราว์เซอร์จะมีนโยบายด้านความปลอดภัย "same origin policy" ที่บังคับว่าข้อมูลต้องมาจากโดเมนเดียวกัน แต่ไม่มีนโยบายนี้กับ JavaScript

รูรั่วนี้ทำให้ผู้ประสงค์ร้ายสามารถล้วงข้อมูลหรือส่งข้อมูลปลอมให้กับโปรแกรมที่เป็น AJAX ได้

Fortify ระบุว่ามีชุดพัฒนา AJAX จำนวน 11 ตัวจากทั้งหมดที่ทดสอบ 12 ตัวที่มีรูรั่วนี้ ได้แก่ Microsoft ASP.NET AJAX (Atlas), XAJAX และ Google Web Toolkit, Prototype, Script.aculo.us, Dojo, Moo.fx, jQuery, Yahoo! UI, Rico และ MochiKit ซึ่งนักพัฒนาได้รับแจ้งเรื่องปัญหานี้แล้ว และเตรียมจะออกรุ่นแก้ไขต่อไป

ที่มา - CBR Online

Comments

By: deans4j
deans4j's blog
on 03/04/07 8:48 #19424 toggle
deans4j's picture

บอกแล้วให้ใช้ Applet : P

By: mk
FounderAndroidRed HatWindows
mk's blog
on 03/04/07 8:53 #19426 Reply to:19424 toggle
mk's picture

Flash ยังดีกว่าเลย


my disclaimer

By: deans4j
deans4j's blog
on 03/04/07 8:56 #19428 Reply to:19426 toggle
deans4j's picture

ชอบ Flex/Flash ก็ใช้สิ ผมสนับสนุนการใช้ DSL มาแต่ไหนแต่ไร

By: mk
FounderAndroidRed HatWindows
mk's blog
on 03/04/07 9:16 #19431 Reply to:19428 toggle
mk's picture

ใช่ๆ สงสัยต้องไปหัดเขียน (อย่างน้อยมันก็ไม่ช้า)


my disclaimer

By: deans4j
deans4j's blog
on 03/04/07 9:29 #19436 Reply to:19431 toggle
deans4j's picture

ก็ถ้าใส่ JavaScript เยอะๆ มันก็ช้าเป็นธรรมดาแหละ เลยไม่แนะนำไง

By: mk
FounderAndroidRed HatWindows
mk's blog
on 03/04/07 9:31 #19437 Reply to:19436 toggle
mk's picture

ผมหมายถึง applet น่ะ คงไม่มีใครเข้าใจผิดละมั้ง


my disclaimer

By: deans4j
deans4j's blog
on 03/04/07 10:02 #19441 Reply to:19437 toggle
deans4j's picture

อ้าวหรอ ผมนึกว่าหมายถึง JavaScript ซะอีก ทั้ง Yahoo mail, hotmail ผมละอืดจะแย่เลย

ว่าแต่ว่าใช้ applet ไหนแล้วช้า?

By: mk
FounderAndroidRed HatWindows
mk's blog
on 03/04/07 14:01 #19461 Reply to:19441 toggle
mk's picture

JavaScript ช้าเพราะใส่ลงไปเยอะ ถ้าใส่น้อยก็ไม่ช้า แปรผันตรง Applet ใส่น้อยก็ยังช้า ไม่ว่าจะตัวไหน


my disclaimer

By: deans4j
deans4j's blog
on 03/04/07 14:07 #19462 Reply to:19461 toggle
deans4j's picture

ขอดูตัวอย่างที่เรียกว่า "ช้า"

By: keng
WriterAndroid
keng's blog
on 03/04/07 20:14 #19485 Reply to:19462 toggle
keng's picture

ช้าคงหมายถึงตอนโหลด

By: sugree
FounderWriterAndroidBlackberry
sugree's blog
on 03/04/07 21:47 #19494 Reply to:19462 toggle
sugree's picture

Applet ไม่ช้า แต่เครื่องทั้งเครื่องน่ะช้าไปเลย เพราะโดนสูบแรมจนเหลือแค่ปริ่มๆ

By: chakrit
ContributoriPhone
chakrit's blog
on 03/04/07 17:26 #19478 Reply to:19461 toggle
chakrit's picture

่java มันช้าเป็นทุนอยู่แล้วอ่ะฮะ ไม่แน่ใจว่าทำไม แต่อย่างน้อยก็เครื่องผมล่ะ 1 ที่ java ช้ากว่า flash และ js


  • chakrit
By: wiennat
Writer
wiennat's blog
on 05/04/07 8:04 #19682 Reply to:19461 toggle
wiennat's picture

applet ไม่ช้าหรอก เวลารัน applet ที่เร็ว นิ่ง เจ๋งมาก แต่โปรแกรมอื่นจะวอดวายกันหมดเพราะ โดน applet ดึงซีพียูกับแรมไปหมด

เรียกว่าใช้ซีพียูไม่คุ้ม จะดีกว่ามั้ง


onedd.net

By: sirn
WriteriPhone
sirn's blog
on 03/04/07 9:04 #19429 toggle
sirn's picture

​อาจส่งข้อมูล​เป็น​ HTML, text ​หรือ​ JavaScript ​(​ใน​ที่นี้คือ​ JSON) ​ก็​ได้​ ​ซึ่ง​ถ้า​เป็น​ XML ​หรือ​ HTML ​แล้ว​ ​เว็บเบราว์​เซอร์​จะ​มีนโยบายด้าน​ความ​ปลอดภัย​ "same origin policy" ​ที่บังคับว่าข้อมูล​ต้อง​มา​จาก​โดเมนเดียว​กัน​ ​แต่​ไม่​มีนโยบายนี้​กับ​ JavaScript

อ่านประโยคนี้แล้วงงๆ ถ้าไม่ไปอ่านที่ต้นฉบับ สรุปก็คือเป็นปัญหาที่บราวเซอร์ไม่ยอมทำตามนโยบายนี้กับ JSON สินะครับ

By: deans4j
deans4j's blog
on 03/04/07 9:57 #19439 Reply to:19429 toggle
deans4j's picture

นโยบาย same origin มันเป็นนโยบายปกติของ browser ทั่วไปกับ HTML, XML แต่มันไม่ครอบคลุมถึง JavaScript

JSON เป็นทางเลือกอื่นแทนที่จะส่งข้อมูลด้วย XML ให้ง่ายกว่าก็ส่งเป็น JavaScript มันซะเลย แต่พอมันเป็นอย่างนี้ก็เข้าทางโจร เพราะเป็นการเปิดช่องให้เล่นอะไรแผลงๆ โดยแทนที่จะส่งข้อมูลกลับมาที่ browser กลับให้ส่งไปที่ผู้ก่อการร้ายแทน

By: sirn
WriteriPhone
sirn's blog
on 03/04/07 10:11 #19444 Reply to:19439 toggle
sirn's picture

ประเด็นของผมคืออ่านแล้วงงน่ะครับ เพราะ AJAX มันก็เป็น JavaScript อยู่แล้ว แล้วไม่ใช้นโยบายนี้กับ JavaScript ก็เลยมึนๆ

By: deans4j
deans4j's blog
on 03/04/07 10:47 #19448 Reply to:19444 toggle
deans4j's picture

เข้าใจแล้วครับ ผมก็งงเหมือนกัน แต่ผมก็ว่าคำพูดของคุณ sirn มันหมิ่นเหม่ด้วย เพราะไปใช้คำว่า "ไม่ยอมทำตาม" ซึ่งอันที่จริงมันไม่ได้ขัดขืน แต่บราวเซอร์มันไม่ได้ใช้นโยบายนี้เลยด้วยซ้ำ แล้วมันเป็นกับ JavaScript ไม่เฉพาะกับ JSON

By: khajochi
WriteriPhoneIn Love
khajochi's blog
on 03/04/07 9:12 #19430 toggle
khajochi's picture

เป็นจริงๆเหรอ ... เหมือนหลายๆตัวไม่น่าจะเป็นนะ


แฟนพันธุ์แท้สตีฟจ็อบส์

By: panuta
iPhone
panuta's blog
on 03/04/07 10:49 #19449 toggle
panuta's picture

อ่านนี่จะเข้าใจได้ง่ายกว่า

Security for GWT Applications

ในข่าวนั้นมันเขียนแล้วนึกภาพไม่ออก

----------------------- http://www.seasandsong.com/


http://www.seasandsong.com/

By: ipats
ContributorWindows PhoneAndroidExteen Official
ipats's blog
on 03/04/07 11:34 #19451 toggle
ipats's picture

จริงๆ ผมว่าเรื่องการไม่ทำตาม same origin policy นี่มันเป็นประโยชน์อย่างนึงของ JSON เลยนะครับ เพราะทำให้สามารถดึงข้อมูลจากอีกเว็บนึงมาได้โดย client เลย ไม่ต้องใช้ server เป็นตัวไปดึงมาก่อน

ของ flash เองมันก็มี crossdomain.xml javascript ก็น่าจะมีมั่ง :D

---------- iPAtS


iPAtS

By: iake
AndroidUbuntu
iake's blog
on 04/04/07 0:11 #19504 toggle
iake's picture

applet ช้าเหรอครับ พวกโปรแกรม realtime หุ้น ไม่เห็นมันจะช้าเลย ใช้ applet

แต่ realtime ที่ใช้ flash อย่าง โปรแกรม streaming ของ settrade.com นี่มันโหลด cpu อย่างหนักเลย ถ้าเครื่องไม่แรงล่ะก็ ใช้ไม่ได้

ผมไม่ค่อยชอบ flash เท่าไหร่

By: iake
AndroidUbuntu
iake's blog
on 09/04/07 22:22 #20310 Reply to:19504 toggle
iake's picture

[เข้ามาเพิ่มเติม]

เรื่อง applet ช้านี่ ผมเจอเข้ากับตัวเองแล้วละ Realtime เทรด Futures ของ AFET นี่กว่าจะโหลดเสร็จ นั่งเคี้ยวหมากฝรั่งจนหายหวานแล้วก็ยังโหลดไม่เสร็จ

- - - - - - - - http://iake.blogspot.com

By: mrkrich
AndroidSymbianWindows
mrkrich's blog
on 04/04/07 9:22 #19544 toggle
mrkrich's picture

อืมมพึ่งนั่งดู JSON ไม่นานนี่เองแฮะ ตกลงมันมีรูรั่วหรอนี่ - -* --- ก่อนหน้าจะมี AJAX เคยคิดจะใช้ FLASH แทนอยู่เหมือนกัน (เพราะรู้สึกว่ามันไม่ยุ่งยากเหมือนกับการนั่งเีขียน Applet เอง) แต่ก็ไม่ได้ทำเพราะ FLASH มันมีข้อด้อย ในเรื่องการจัดการหน่วยความจำ (เรื่อง Garbage collection) ส่วนถ้าจะให้ดีจริงๆ คงต้องไปนั่งเขียน Director มั๊ง เขียนเป็น Shockwave เต็มๆไปเลยจะช่วยได้ (แต่ก็นะตอนนี้มี AJAX แล้วนี่) --- เรื่อง Applet ช้า .. ผมว่าเป็นอย่างที่พี่ sugree ว่านะครับ คือ Java มันชอบกิน RAM + CPU สูงมากๆ โดยส่วนตัวแล้วผมไม่ชอบ การใช้ Applet หรือ ActiveX เท่าไหร่ เพราะมันไม่ common คือมันชอบขึ้นมาถามให้ confirm นู่นนี่อยู่เรื่อยน่าเบือครับ สำหรับคนใช้งานเว็บส่วนใหญ่แล้วผมมั่นใจว่า มีอะไรให้เลือก- ให้ตัดสินใจน้อยเท่าไหร่ยิ่งดี


น่ารัก หน้าตาดี น่าสนใจ น่าจะเป็น น่า..นะ

By: pittaya
WriterAndroidUbuntuIn Love
pittaya's blog
on 04/04/07 10:53 #19560 toggle
pittaya's picture

Applet มันจะทำ browser นิ่งไปพักนึงตอนที่มันพยายามจะ initialize ตัวมันขึ้นมานะ แต่โหลดเสร็จแล้วก็ไม่ช้าเท่าไหร่ ยกเว้นตอนสลับหน้าต่างไปๆ มาๆ เนี่ย จะมีหน่วงๆ ให้เห็น

สรุปว่าชอบ flash มากกว่า


pittaya.com

By: Gmz
Windows PhoneAndroid
Gmz's blog
on 09/04/07 3:23 #20189 toggle
Gmz's picture

ผมชอบเทคนิคของ GWT มากกว่า อย่างน้อย ๆ ผมว่ามันประยุกต์ได้ดีกว่า Applet หรือ JSF แทรก javascript แบบเขียนเองลงไปในโค้ดก็ได้ ใช้ร่วมกันระหว่าง java ได้เลย GWT นี่แหละตัวจริง บางทีก็เอาไปผสมกับ jsp ธรรมดา ๆ บางครั้งผมก็ผสมกับ xhtml ปกติ (อย่างหลังนี่กินแรมน้อยมาก ๆ ผมยังเป็นพวกที่ชอบทำทุกอย่างให้กินแรมน้อยที่สุดเท่าที่จะทำได้ ไม่รวยอ่ะ)

ที่เลือก GWT เพราะว่า java ตรวจสอบความผิดพลาดได้ง่ายกว่า javascript เพียว ๆ แล้วก็ถ้าให้ออกแบบเป็น UML อาจารย์จะเข้าใจง่ายกว่า ส่วน javascript ไม่รู้จะใช้อะไรทำ design น่ะครับ

By: นายขโมย
นายขโมย's blog
on 18/04/07 17:56 #20978 toggle
นายขโมย's picture

ตกลง applet มันช้าตอน load หรือตอนทำงานกันแน่

ผมว่าแค่ load ช้าเท่านั้นนะ