Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature/url query apply data okodayon #122

Merged
merged 4 commits into from
Dec 1, 2021

Conversation

okodayon
Copy link
Collaborator

概要

  • この変更により、aタグなどのタグ内にあるGETパラメーターがinputタグと同じようにapplyDataを参照するようになりました。

関連するIssue

#118

変更点

  • タグ内のパラメーターを見つけた際にscanと同じく、applyDataからValueを取ってくるようにしました。

チェック項目

  • 機能が正常に動作することを確認しました。

再現手順

http://192.168.xxx.xxx/wavsep/active/Reflected-XSS/RXSS-Detection-Evaluation-GET-Experimental/index.jsp
↑のページにあるCase06のhrefにuserinputというGETパラメーターがあるので、crawl.vueのパラメーター追加を行ってみてください。
結果は/api/sitemapでGETparamの欄を確認することができるかと思います。

gatherCandidates内で行われていた不要なfor文を削除。それに伴いfor分の削除と、postかgetの条件式を変更。
fullscan語にmessageがIssueを空にし、candidateが埋まっているsitemapをダウンロードできます。それをImportしてQuickScanをすることにより、2回目以降にgatherをせずにstoredを見つけることができる。
hrefなどタグ内のURLは今まで元のURLにくっつけて送信するだけだったが、そこにランダムなcsrfトークンなどが含まれた場合に、無限ループに陥る可能性がある。そこで、applyDataと関連付けることにより、applyDataに入力された値をQueryに入れるようになり、ランダムなcsrfトークンなどによる無限ループを回避できる。
Comment on lines +56 to +69
func EmptySitemapIssue(node *JsonNode) {
for i := 0; len(node.Children) > i; i++ {
EmptySitemapIssue(&node.Children[i])
}

node.Issue = nil
/*
for i, _ := range node.Children {
EmptySitemapIssue(&node.Children[i])
}
node.Issue = nil
*/

}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

これはsitemap packageのjson.goとかの方がよさそう

@okodayon okodayon merged commit e157cfd into fix/gatherCandidates Dec 1, 2021
@okodayon okodayon deleted the feature/urlQuery-applyData-okodayon branch December 1, 2021 07:56
@y0d3n y0d3n mentioned this pull request Dec 1, 2021
1 task
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants