[xiphos-source] [crosswire/xiphos] 30b91f: url: restrict clicked-link fallthrough to http/htt...

Acts1631 noreply at github.com
Thu Jul 9 18:11:11 EDT 2026


  Branch: refs/heads/master
  Home:   https://github.com/crosswire/xiphos
  Commit: 30b91fd1885a0cdf7921d152e7dc2e7f551cd222
      https://github.com/crosswire/xiphos/commit/30b91fd1885a0cdf7921d152e7dc2e7f551cd222
  Author: Acts1631 <69813585+acts-1631 at users.noreply.github.com>
  Date:   2026-07-09 (Thu, 09 Jul 2026)

  Changed paths:
    M src/main/url.cc

  Log Message:
  -----------
  url: restrict clicked-link fallthrough to http/https URIs (#1344)

Bible, commentary, and dictionary module content is rendered as HTML
by SWORD's render filters and loaded into the WebKit view essentially
unmodified; there is no sanitization of <a href> values anywhere in
the render/display pipeline.

When a clicked link's URL doesn't match one of Xiphos's internal
schemes (sword://, bible://, passagestudy.jsp, xiphos.url),
main_url_handler() falls through to xiphos_open_default(), which calls
gtk_show_uri_on_window()/ShellExecuteW() on the raw URL with no scheme
check and no user confirmation. A malicious or compromised module
repository could embed a link such as

  <a href="file:///home/user/.ssh/id_rsa">click here</a>

in a commentary or dictionary entry; clicking it opens the local file
with the desktop's default handler for that file, without any
warning.

Restrict this fallthrough to http:// and https:// URIs, which are the
only schemes legitimate module content should need for external links.
Other callers of xiphos_open_default() (About/help/mailing-list/bug-
report menu items) are unaffected.



To unsubscribe from these emails, change your notification settings at https://github.com/crosswire/xiphos/settings/notifications


More information about the xiphos-source mailing list