XSS
Cross-Site Scripting
ローカルサーバーを立てて実験する
ちゃんとブロックされる
code:XSS.jl
using HTTP
# ファイルからHTMLを読み込む
const html = read("XSS.html", String)
HTTP.serve() do request::HTTP.Request
# クエリパラメータを取得
params = HTTP.queryparams(request)
input = get(params, "input", "")
# HTMLを生成
response_html = replace(html, "submit:" => "submit: $input")
# HTMLをレスポンスとして返す
return HTTP.Response(200, response_html)
end
code:XSS.html
<!DOCTYPE html>
<html>
<head>
<title>XSS Test Page</title>
</head>
<body>
<h1>XSS Test Page</h1>
<p>input:</p>
<form method="GET" action="#">
<input type="text" name="input">
<input type="submit" value="Submit">
</form>
<p>submit:</p>
</body>
</html>