JOYSOUND とは
JOYSOUND はカラオケのサービスとして有名です。公式ウェブサイトでは最新情報が確認できるほか、曲や歌詞を検索する機能もあります。
脆弱性の内容
今回発見した脆弱性は検索フォームの XSS でした。
検索ページ: https://www.joysound.com/web/search
この検索ページでは古いバージョンである v1.3.4 の AngularJS (注: Angular ではない) が使われており、このバージョンに存在する XSS を実行することができました。
全然覚えてないんですが、届出を読むと具体的なペイロードは {{{}.")));alert(1)//"}} が動作したようで、
URL: https://www.joysound.com/web/search/cross?match=1&keyword={{{}.")));alert(1)//"}}

実際にこういう感じになったみたいです。
なんでこのペイロードを使ったのか全く記憶にないんですが、確かどこかの GitHub か gist に、大量に AngularJS の XSS ペイロードが載ってるサイトがあって、そこから拝借したような気がします。
現在は修正されたというか、WAF か何かが挟まって、alert() みたいなアヤシイ文字列を含めると Access Denied されるようになっています。
いまだに v1.3.4 の AngularJS を使ってるのは変わりないので、頑張ったらまだ何か出てくるかもしれないですが、私は AngularJS に詳しくないのでわからないです。
脆弱性の報告
2024年1月30日に IPA 経由で脆弱性を報告し、2025年11月21日に修正完了の通知が届きました。
感想
2022年から AngularJS はもうメンテされてないので、JOYSOUND のサイトのメンテナンスをする人は大変そうだと思いました。
XSS ペイロードが載ってるサイトは以下みたいなのがあるんですが、今回使ったのはどこにもなかったので、本当にどこからとってきたのかわからないです…
個人的に、AngularJS だけでなく Angular も XSS されやすいイメージがあります。:
以上、今回は単に XSS があったという話でした。次回もお楽しみに