👉 วันนี้แอดจะพาเพื่อน ๆ มารู้จักกับอีก 1 ช่องโหว่ในโลกอินเทอร์เน็ต นั่นก็คือ... HTML Injection นั่นเอง !!
.
มันคืออะไร และมีรายละเอียดยังไง มาติดตามกันได้เลยจ้าาาา 🥰
.
👨💻 HTML Injection - เป็นช่องโหว่ด้านความปลอดภัยที่อนุญาตให้ผู้โจมตีใส่โค้ด HTML ลงในหน้าเว็บของเรา ซึ่งแท็กที่ถูกแทรกลงไปใหม่อาจจะเป็นแค่แท็กที่ใช้แสดงข้อความอันตราย หรือบางทีก็อาจจะเป็นการเปลี่ยนแปลงหน้าเว็บของเราไปทั้งหมดนั่นเอง
.
ซึ่งไอเจ้า HTML Injection เนี่ยมันจะสร้างความเสียหายให้กับข้อมูลบนหน้าเว็บของเรา บางทีอาจจะถึงขั้นร้ายแรงอย่างการขโมยข้อมูลที่สำคัญได้เลยนะ
.
📑 ตัวอย่างการทำ HTML Injection
.
ผู้โจมตีจะอาจตรวจพบ Website ที่เสี่ยง จากนั้นผู้โจมตีจะส่ง URL ที่มีโค้ดอันตรายไปยังผู้ใช้ที่เป็นเหยื่อผ่านอีเมล หรืออื่น ๆ หากผู้ใช้ที่เป็นเหยื่อคลิก URL ที่เป็นอันตรายนี้ ระบบจะเรียกใช้โค้ด JavaScript ด้วยสิทธิ์ของผู้ใช้ที่เป็นเหยื่อ ซึ่งมันสามารถขโมยข้อมูลสำคัญของผู้ใช้ไปได้อย่างง่ายดายนั่นเอง หรือบางทีอาจจะโจมตีโดยทำการเปลี่ยนแปลงข้อมูลบนหน้าเว็บ ทำให้เกิดความเสียหายบนหน้าเว็บได้นั่นเอง เอ๋? เหมือนเว็บดังที่โดนแฮกไปเมื่อเร็ว ๆ นี้เลยนะเนี่ยยย !!
.
🌟 ประเภทของ HTML Injection
แบ่งเป็น 2 ประเภท คือ
🔹 Stored HTML Injection - จะเกิดขึ้นเมื่อโค้ด HTML ที่เป็นอันตรายถูกบันทึกไว้ในเว็บเซิร์ฟเวอร์และถูกดำเนินการทุกครั้งที่ผู้ใช้เรียกใช้ฟังก์ชัน
.
🔹 Reflected HTML Injection - เกิดขึ้นเมื่อมีการโจมตีผ่านการใช้ Methods HTTP เช่น GET หรือ POST หรืออาจจะเป็นการโจมตีผ่านการเปลี่ยน URL ที่สำคัญบนหน้าเว็บ ทำให้เมื่อผู้ใช้คลิกไปแล้วจะเข้าสู่เว็บไซต์ที่เป็นอันตรายนั่นเอง
.
🌈 วิธีป้องกัน HTML Injection
🔸 เช็คความถูกต้องของการป้อนข้อมูลจากผู้ใช้ โดยการตรวจสอบ Length, Type, Format และ Data Range ว่ามันตรงกับที่เราระบุไว้หรือไม่
🔸 ต้องทำการเข้ารหัสข้อมูล Input จากผู้ใช้ เพื่อความปลอดภัยของข้อมูล
🔸 ตรวจสอบแท็ก และอื่น ๆ
.
หากเพื่อน ๆ สนใจศึกษาช่องโหว่อื่น ๆ สามารถเข้าไปอ่านเรื่อง OWASP ได้ในลิงค์ด้านล่างเลยจ้า
💥 OAWSP >> https://www.facebook.com/borntodev/posts/4185277734863821
.
borntoDev - 🦖 สร้างการเรียนรู้ที่ดีสำหรับสายไอทีในทุกวัน
同時也有1部Youtube影片,追蹤數超過2萬的網紅Material desires Nagoya Man,也在其Youtube影片中提到,Bluetooth 3.0 Speaker with Alarm Clock FM Radio 3.5mm AUX Input http://www.tomtop.com/mini-speakers-1321/p-v2829.html?aid=C2984 (SPEC) Model: LP-06 P...
「html input type」的推薦目錄:
- 關於html input type 在 BorntoDev Facebook 的精選貼文
- 關於html input type 在 Kewang 的資訊進化論 Facebook 的最佳貼文
- 關於html input type 在 โปรแกรมเมอร์ไทย Thai programmer Facebook 的最佳貼文
- 關於html input type 在 Material desires Nagoya Man Youtube 的最佳貼文
- 關於html input type 在 HTML5 input 中的pattern 屬性| 歷史共業 的評價
- 關於html input type 在 "Protect" text box value from input (HTML form) - Stack Overflow 的評價
- 關於html input type 在 HTML5 Input Types for e-mail, url, number, and range - YouTube 的評價
html input type 在 Kewang 的資訊進化論 Facebook 的最佳貼文
繼之前分享如何實作「窮人版 ELK」之後,再來分享一下這個服務裡面的 DSL 是如何實作的。會想到要為這個服務做 DSL,主要是小編雖然已經把 Impala 產生的資料利用一些工具轉成 PNG 圖檔,但動作太繁雜,所以想把這些過程用 DSL 來表示,工程師只要會下 SQL 就能把資料轉成 PNG 圖檔了。
其實對於 DSL,有在 follow 粉絲頁的朋友應該有注意到,小編很久以前就有一個屬意的方案了,那就是 MSON。它結合了 Markdown 以及 JSON,所以不只人類易讀,機器也易讀。只不過 MSON Parser 一直都是殘缺不全,所以沒辦法讓小編完整的實作 DSL,這個方案就被捨棄了。
另一個也很適合拿來做 DSL 的就是 YAML 了,個人覺得跟 MSON 比起來易讀性稍低一點,但已經是目前還不錯的實作方式,所以就以這個來做為「窮人版 ELK」的 DSL 實作方案。
DSL 已經把所有轉換的細節都隱藏起來了,工程師只要先自己在 Impala 上撰寫正確的 SQL 指令,其他動作只要把必要欄位填完就可以了。下面是必要欄位的說明:
* SQL:要在 Impala 裡面執行的 SQL 指令,其中有用 ":VAR" 包起來的變數名稱,表示是從 INPUT 欄位取得
* CHART:highcharts 的圖表格式,DSL 目前支援 column (長條圖)、pie (圓餅圖)
* INPUT:這是一個陣列,表示這個變數名稱是從外部操作時取得,另外後面的 "date" 為資料型態,目前支援的類型為 HTML 的 input[type]
* OUTPUT:產生 PNG 圖檔時的欄位資訊,如 X 軸是從 Impala 的哪個欄位取得,顯示在圖表上的名稱要叫什麼
至於轉換細節又是另一件麻煩事,將 DSL 轉成最後的圖檔又經過了不少步驟:
1. js-yaml:雖然說 YAML 很適合拿來做 DSL,但 JSON 還是目前大家最常用的格式。所以當然要先把 YAML 轉成 JSON 這樣才好操作 XD
2. jq:轉換過程中 jq 幫了小編很大的忙,官網寫著這是一套輕量且靈活的命令列 JSON 處理工具。無論要對 JSON 取 key、取 value、取 length、做 group by、做 sort by、if-else、while-loop 都可以,就是很強大。所以小編就拿這個將 YAML 轉換完的 JSON,用一堆奇怪的語法把資料轉換成功。
其實在轉換過程最麻煩的不是操作 JSON,最麻煩的在小編不太會寫 bash script 啊!!!尤其是一堆變數轉換的過程,一下子用 ${},一下子用 $(),還有 ${[$k]} 的這種寫法,看了頭好痛 Orz
最後把 jq 轉完的資料丟給前一篇提到的那些工具,就可以完美把 PNG 圖檔產生出來了,第二篇的「窮人版 ELK」文章到此也就結束了。其實這個專案還有另一個跟圖表無關的功能,那就是即時觀看 API 發送歷程,如果有第三篇的話再來分享一下好了。
* 如何實作「窮人版 ELK」:https://www.facebook.com/kewang.information/posts/2085843121692051
* 如何使用 MSON 的幾個方向:https://www.facebook.com/kewang.information/posts/1940647046211660
* jq:https://stedolan.github.io/jq
#mson #dsl #yaml #json #jq
html input type 在 โปรแกรมเมอร์ไทย Thai programmer Facebook 的最佳貼文
เมื่อ AI สามารถแปลงภาพ GUI ของหน้าจอโปรแกรม ให้กลายเป็นซอร์โค้ดได้ ต่อไปมันคงมาเป็นผู้ช่วยโปรแกรมเมอร์ฝั่ง Front-end ก็ได้นะ...หรือจะแย่งงานเราในอนาคตเปล่าหว้า ก็ไม่รู้ซินะ
ก่อนหน้านี้แอดได้ลงข่าวงานวิจัยของโปรเจค DeepCoder จากไมโครซอฟต์ และ Cambridge ที่ใช้ AI เป็น Deep learning สามารถเขียนโปรแกรมขึ้นมาเอง เพียงแค่ดูซอร์สโค้ดตัวอย่าง ซึ่งสร้างความฮือฮามาแล้วรอบหนึ่ง
คราวนี้เป็นงานวิจัยสดๆ ร้อน เขาได้สนอวิธีการใหม่ในการเขียนโค้ด ที่ตั้งชื่อว่า pix2Code (ก็คงมาจากชื่อเต็ม Pixel to source code)
pix2Code มันเป็นวิธีสร้างซอร์สดโค้ด จากภาพหน้าจอ GUI ของโปรแกรม ก็ที่ทีมกราฟฟิกดีไซน์ออกแบบให้พวกเราชาวโปรแกรมเมอร์ ได้นำไปเขียนโปรแกรมนั่นแหละ ...เรียกว่า ตอนนี้ขอมีแค่ภาพอย่างเดียว ตัว AI ก็ Generate ซอร์สโค้ดให้ใช้งานอย่างอัตโนมัติ สบายปรื๋อ!!!!
จากนั้นพวกเราจะเอาโค้ดไปเขียน Back-end ต่อ จะพัฒนาซอฟต์แวร์ เว็บไซต์ โมบายแอพ จะทำอะไร ก็แล้วแต่เราอีกที
ในทางเทคนิคโดยย่อของงานวิจัยชิ้นนี้ pix2Code จะใช้ AI เป็น Deep learning ซึ่งข้างในเป็นโมเดล CNN กับ LSTM ใช้สองเทคนิคผสมกัน มาช่วยสร้างโค้ดจาก input ซึ่งเป็นภาพไฟล์รูปภาพ โดยโค้ดที่ถูกสร้างออกมาจะแบ่งเป็น 3 แพลท์ฟอม ได้แก่ iOS, Android และเว็บ (HTML/CSS)
ทว่าปัจจุบันเทคนิคนี้ยังให้ความถูกต้องแค่ 77%
...อะฮะ ตอนนี้อาจสร้างโค้ดได้ไม่แม่นเท่าไรแฮะ (ใจเย็นๆ โปรแกรมเมอร์ยังไม่ตกงานง่ายๆ) แต่ถ้ามีใครพัฒนาต่อไป ก็อาจแม่นยำมากขึ้น หรืออาจมี paper ที่ใช้ AI เขียนโปรแกรมอัตโนมัติ ทำนองเดียวกันนี้มากขึ้น เพื่อมาเขย่าขาเก้าอี้โปรแกรมเมอร์เรื่อยๆ ก็ได้
ใครสนใจดูวีดีโอ สาธิตการใช้เทคนิคนี้ ก็ดูได้ที่ลิงค์ จะเห็นว่า แค่วาดรูปหน้าจอ แล้วก็รันออกมาเป็นโค้ดบนแพลทฟอร์ม iOS กับตัวอย่างสร้างเป็นไฟล์ HTML
https://www.youtube.com/watch?v=pqKeXkhFA3I&feature=youtu.be
ส่วนต้นฉบับ Paper ของคุณ Tony Beltramelli เผื่อใครสนใจจะนำไปพัฒนาต่อ
https://arxiv.org/abs/1705.07962
https://github.com/tonybeltramelli/pix2code
ปล. เสียดายเข้าไปดู Github แล้ว เขาไม่มีซอร์สโค้ดแจกให้ เลยอดลองรันเล่นเลย 555
++++++++++++++++++++++++++++
อ่อ AI ในที่นี้ ไม่ใช่ Adobe Illustrator ชื่อย่อเหมือนกัน แต่คนละความหมาย
html input type 在 Material desires Nagoya Man Youtube 的最佳貼文
Bluetooth 3.0 Speaker with Alarm Clock FM Radio 3.5mm AUX Input
http://www.tomtop.com/mini-speakers-1321/p-v2829.html?aid=C2984
(SPEC)
Model: LP-06
Product Type: Mini Pocket Speaker
Interface: Micro USB port, MicroSD Card port.
Bluetooth Version: Bluetooth 3.0
Support Profiles: A2DP/AVRCP/HFP/HSP
Operation Distance: Up to 10m (Free Space)
Audio System: 2.0 Channel
Max Micro SD Card Memory: Up to 32GB
Output Power: 4W * 2
Impedance: 4Ω
Sensitivity: 85dB
Frequency Response: 90Hz~18KHz
Signal and Noise Ratio (SNR): ≥70dB
Output Distortion Rate: ≤0.5%
Battery Capacity: Built-in 3.7V / 2200mAh Li-ion battery
Music Play Time: 5.0~8.0 hours (Depends on the volume level)
Talk Time: Up to 8 hours
Charge Time: 3.5 hours (Depends on charger or charge cable)
Charging Port: Micro USB port, DC5V
Color: Black
Item Size: 18.9 * 6.9 * 4.8cm / 7.4 * 2.7 * 1.88in
Item Weight: 378g / 13.35oz
Package Size: 23.0 * 8.0 * 5.5cm / 9.0 * 3.14 * 2.16in
Package weight: 549g / 19.39oz
※TOMTOPさんからのレビュー用品です。
----------------------------------------------------------
Blog:http://openmemo.blog.fc2.com/
Twitter:http://twitter.com/monoblogoo
Flickr:http://www.flickr.com/photos/monoblogoo/
html input type 在 HTML5 Input Types for e-mail, url, number, and range - YouTube 的推薦與評價
Use new HTML5 form inputs for...email and url which will validate for ... HTML Web Forms Part 2: HTML5 Input ... ... <看更多>
html input type 在 HTML5 input 中的pattern 屬性| 歷史共業 的推薦與評價
多虧現在瀏覽器良好生態,直接寫在html 就能做掉了,只要將input 包進form 裡,利用其原生submit method 自動驗證。 type 搭配 pattern. input 本身已有很 ... ... <看更多>