René's URL Explorer Experiment


Title: [Java] CWE-295 - Incorrect Hostname Verification - MitM · Issue #108 · github/securitylab · GitHub

Open Graph Title: [Java] CWE-295 - Incorrect Hostname Verification - MitM · Issue #108 · github/securitylab

X Title: [Java] CWE-295 - Incorrect Hostname Verification - MitM · Issue #108 · github/securitylab

Description: CVE ID(s) List the CVE ID(s) associated with this vulnerability. GitHub will automatically link CVE IDs to the GitHub Advisory Database. CVEs pending No CVE for this one: https://github.com/laurent-clouet/sheepit-client/pull/240/files Th...

Open Graph Description: CVE ID(s) List the CVE ID(s) associated with this vulnerability. GitHub will automatically link CVE IDs to the GitHub Advisory Database. CVEs pending No CVE for this one: https://github.com/laurent...

X Description: CVE ID(s) List the CVE ID(s) associated with this vulnerability. GitHub will automatically link CVE IDs to the GitHub Advisory Database. CVEs pending No CVE for this one: https://github.com/laurent...

Opengraph URL: https://github.com/github/securitylab/issues/108

X: @github

direct link

Domain: github.com


Hey, it has json ld scripts:
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"[Java] CWE-295 - Incorrect Hostname Verification - MitM","articleBody":"## CVE ID(s)\r\n\r\n*List the CVE ID(s) associated with this vulnerability. GitHub will automatically link CVE IDs to the [GitHub Advisory Database](https://github.com/advisories).*\r\n\r\n- CVEs pending\r\n- No CVE for this one:\r\nhttps://github.com/laurent-clouet/sheepit-client/pull/240/files\r\nThis instance would not have been found by this query.\r\nThat is not a fault of the query, but `sheepit-client` uses [Lombok](https://projectlombok.org/) which seems to not work well with LGTM.\r\n[This \"hack\"](http://anthonywhitford.com/lombok.maven/lombok-maven-plugin/faq.html#alt-src-setup) should fix it.\r\n`sheepit-client` is the client for a distributed Blender render farm, based on people giving their computer power for free.\r\nThe MitM vulnerability would have allowed an attacker to **execute code** by changing the Blender file to contain dangerous python code.\r\nNormally python code is disabled from running, but this value is sent by the server and so the attacker could override this as well.\r\nThis means that **an attacker could execute arbitrary code**.\r\n- [CVE-2020-13955](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-13955)\r\n  \u003e HttpUtils#getURLConnection method disables explicitly hostname verification for HTTPS connections making clients vulnerable to man-in-the-middle attacks. Calcite uses internally this method to connect with Druid and Splunk so information leakage may happen when using the respective Calcite adapters. The method itself is in a utility class so people may use it to create vulnerable HTTPS connections for other applications. From Apache Calcite 1.26 onwards, the hostname verification will be performed using the default JVM truststore. \r\n- CVE-2020-26234\r\n  \u003e Opencast before version 8.9 and 7.9 disables HTTPS hostname verification of its HTTP client used for a large portion of Opencast's HTTP requests.\r\n- CVE-2020-17514\r\n  \u003e Fineract provides a reliable, robust, and affordable solution for entrepreneurs, financial institutions, and service providers to offer financial services to the world’s 2 billion underbanked and unbanked. Fineract is aimed at innovative mobile and cloud-based solutions, and enables digital transaction accounts for all. \r\n\r\n  The vulnerable class is used for example [here](https://lgtm.com/projects/g/apache/fineract/snapshot/a28948c8c98837a5fc580fbbc489322aafdc3d2b/files/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/processor/TwilioHookProcessor.java?sort=name\u0026dir=ASC\u0026mode=heatmap#L79) which seems to be used for sending SMS.\r\nI'm not 100 % sure (found this issue more than half a year ago...), but I think the SMS was used to send [OTP tokens](https://github.com/apache/fineract/blob/cf7d38adbcf0bc197fec2a43cd32a69ade81e44f/fineract-provider/src/main/java/org/apache/fineract/infrastructure/security/service/TwoFactorServiceImpl.java#L104), although I did not really verify the OTP token part.\r\n- CVE-2021-21385 (https://github.com/openMF/mifos-mobile/security/advisories/GHSA-9657-33wf-rmvx)\r\n  \u003e [mifos-mobile is an] (...) Android Application built on top of the MifosX Self-Service platform for end-user customers to **view/transact** on the accounts and **loans** they hold.\r\n\r\n  Note that the fixed code is written in *Kotlin*; the app has recently been converted to a Kotlin app and the issue has been found in the semantically equivalent Java version.\r\n\r\n\r\n## Report\r\n\r\nHostname verification is an essential part of Transport Layer Security (TLS) and HTTPS.\r\n\r\nWhen a TLS connection is established there are two important steps:\r\nFirst, the chain of trust is verified that means it is checked whether the certificate has been issued by a trusted certificate authority.\r\nSecond, the hostname (that is being connected to) needs to be verified against the certificate.\r\nThat means it is checked whether the certificate is actually for the hostname.\r\n\r\nIf the hostname is not verified an attacker could present any certificate with a valid chain of trust, but that is not issued for the hostname at all.\r\n**This allows  a man-in-the-middle attack!**\r\n\r\nMany posts tell developers that have problems with hostname verification to accept any certificate as valid in the case of a mismatch.\r\nThese problems usually are configuration problems that should be fixed instead.\r\n\r\nJava verifies HTTPS hostnames by default.\r\nBut when a protocol uses TLS (SSLEngine) the hostname is not verified by default.\r\nThat's where the second part of my query (IncorrectHostnameVerifier.ql) comes into play.\r\n\r\n[This PR and PR description is WIP]\r\n\r\n87 of 642 projects tested have *overridden* the `Hostname.verify` method. \r\nQuery: https://github.com/github/codeql/pull/3581\r\n27 of 642 projects are detected by my currently running query.\r\n\r\n- [x] Are you planning to discuss this vulnerability submission publicly? (Blog Post, social networks, etc). *We would love to have you spread the word about the good work you are doing*\r\n","author":{"url":"https://github.com/intrigus-lgtm","@type":"Person","name":"intrigus-lgtm"},"datePublished":"2020-05-27T21:15:51.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":23},"url":"https://github.com/108/securitylab/issues/108"}

route-pattern/_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format)
route-controllervoltron_issues_fragments
route-actionissue_layout
fetch-noncev2:20ba92f0-3572-17b0-232e-7886a1b1d67f
current-catalog-service-hash81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114
request-idA566:1DAD98:104853A:170FB6F:6A4D2EC6
html-safe-nonce8233ba8ee211abf29d7f0c7ff96841327e4340014fd8be214d2906cd8a200d89
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJBNTY2OjFEQUQ5ODoxMDQ4NTNBOjE3MEZCNkY6NkE0RDJFQzYiLCJ2aXNpdG9yX2lkIjoiNjU1MTYxNzc1MzA0MzUxMzAzMCIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9
visitor-hmac2e806c8e376d7cfd43534c15f62c01a50ecd787c272c68602ae78cf11fd6138e
hovercard-subject-tagissue:626036592
github-keyboard-shortcutsrepository,issues,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location///voltron/issues_fragments/issue_layout
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/github/securitylab/108/issue_layout
twitter:imagehttps://opengraph.githubassets.com/234ef830b06ee43532c1289d257eb0870b568af07f1d4faab148909acb91c383/github/securitylab/issues/108
twitter:cardsummary_large_image
og:imagehttps://opengraph.githubassets.com/234ef830b06ee43532c1289d257eb0870b568af07f1d4faab148909acb91c383/github/securitylab/issues/108
og:image:altCVE ID(s) List the CVE ID(s) associated with this vulnerability. GitHub will automatically link CVE IDs to the GitHub Advisory Database. CVEs pending No CVE for this one: https://github.com/laurent...
og:image:width1200
og:image:height600
og:site_nameGitHub
og:typeobject
og:author:usernameintrigus-lgtm
hostnamegithub.com
expected-hostnamegithub.com
None92571a8944142227b7e19cd10918b1ddd06e5066c1ad5bc7e4769cf6140a87e6
turbo-cache-controlno-preview
go-importgithub.com/github/securitylab git https://github.com/github/securitylab.git
octolytics-dimension-user_id9919
octolytics-dimension-user_logingithub
octolytics-dimension-repository_id221101274
octolytics-dimension-repository_nwogithub/securitylab
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id221101274
octolytics-dimension-repository_network_root_nwogithub/securitylab
turbo-body-classeslogged-out env-production page-responsive
disable-turbofalse
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
release93f17a978ee60bc4668e1d7b90e6bd2d622261fd
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://github.com/github/securitylab/issues/108#start-of-content
https://github.com/
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fgithub%2Fsecuritylab%2Fissues%2F108
GitHub CopilotWrite better code with AIhttps://github.com/features/copilot
GitHub Copilot appDirect agents from issue to mergehttps://github.com/features/ai/github-app
MCP RegistryNewIntegrate external toolshttps://github.com/mcp
ActionsAutomate any workflowhttps://github.com/features/actions
CodespacesInstant dev environmentshttps://github.com/features/codespaces
IssuesPlan and track workhttps://github.com/features/issues
Code ReviewManage code changeshttps://github.com/features/code-review
GitHub Advanced SecurityFind and fix vulnerabilitieshttps://github.com/security/advanced-security
Code securitySecure your code as you buildhttps://github.com/security/advanced-security/code-security
Secret protectionStop leaks before they starthttps://github.com/security/advanced-security/secret-protection
Why GitHubhttps://github.com/why-github
Documentationhttps://docs.github.com
Bloghttps://github.blog
Changeloghttps://github.blog/changelog
Marketplacehttps://github.com/marketplace
View all featureshttps://github.com/features
Enterpriseshttps://github.com/enterprise
Small and medium teamshttps://github.com/team
Startupshttps://github.com/enterprise/startups
Nonprofitshttps://github.com/solutions/industry/nonprofits
App Modernizationhttps://github.com/solutions/use-case/app-modernization
DevSecOpshttps://github.com/solutions/use-case/devsecops
DevOpshttps://github.com/solutions/use-case/devops
CI/CDhttps://github.com/solutions/use-case/ci-cd
View all use caseshttps://github.com/solutions/use-case
Healthcarehttps://github.com/solutions/industry/healthcare
Financial serviceshttps://github.com/solutions/industry/financial-services
Manufacturinghttps://github.com/solutions/industry/manufacturing
Governmenthttps://github.com/solutions/industry/government
View all industrieshttps://github.com/solutions/industry
View all solutionshttps://github.com/solutions
AIhttps://github.com/resources/articles?topic=ai
Software Developmenthttps://github.com/resources/articles?topic=software-development
DevOpshttps://github.com/resources/articles?topic=devops
Securityhttps://github.com/resources/articles?topic=security
View all topicshttps://github.com/resources/articles
Customer storieshttps://github.com/customer-stories
Events & webinarshttps://github.com/resources/events
Ebooks & reportshttps://github.com/resources/whitepapers
Business insightshttps://github.com/solutions/executive-insights
GitHub Skillshttps://skills.github.com
Documentationhttps://docs.github.com
Customer supporthttps://support.github.com
Community forumhttps://github.com/orgs/community/discussions
Trust centerhttps://github.com/trust-center
Partnershttps://github.com/partners
View all resourceshttps://github.com/resources
GitHub SponsorsFund open source developershttps://github.com/sponsors
Security Labhttps://securitylab.github.com
Maintainer Communityhttps://maintainers.github.com
Acceleratorhttps://github.com/accelerator
GitHub Starshttps://stars.github.com
Archive Programhttps://archiveprogram.github.com
Topicshttps://github.com/topics
Trendinghttps://github.com/trending
Collectionshttps://github.com/collections
Enterprise platformAI-powered developer platformhttps://github.com/enterprise
GitHub Advanced SecurityEnterprise-grade security featureshttps://github.com/security/advanced-security
Copilot for BusinessEnterprise-grade AI featureshttps://github.com/features/copilot/copilot-business
Premium SupportEnterprise-grade 24/7 supporthttps://github.com/premium-support
Pricinghttps://github.com/pricing
Search syntax tipshttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
documentationhttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fgithub%2Fsecuritylab%2Fissues%2F108
Sign up https://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fvoltron%2Fissues_fragments%2Fissue_layout&source=header-repo&source_repo=github%2Fsecuritylab
Reloadhttps://github.com/github/securitylab/issues/108
Reloadhttps://github.com/github/securitylab/issues/108
Reloadhttps://github.com/github/securitylab/issues/108
Please reload this pagehttps://github.com/github/securitylab/issues/108
github https://github.com/github
securitylabhttps://github.com/github/securitylab
Notifications https://github.com/login?return_to=%2Fgithub%2Fsecuritylab
Fork 288 https://github.com/login?return_to=%2Fgithub%2Fsecuritylab
Star 1.6k https://github.com/login?return_to=%2Fgithub%2Fsecuritylab
Code https://github.com/github/securitylab
Issues 1 https://github.com/github/securitylab/issues
Pull requests 0 https://github.com/github/securitylab/pulls
Discussions https://github.com/github/securitylab/discussions
Actions https://github.com/github/securitylab/actions
Projects https://github.com/github/securitylab/projects
Models https://github.com/github/securitylab/models
Security and quality 0 https://github.com/github/securitylab/security
Insights https://github.com/github/securitylab/pulse
Code https://github.com/github/securitylab
Issues https://github.com/github/securitylab/issues
Pull requests https://github.com/github/securitylab/pulls
Discussions https://github.com/github/securitylab/discussions
Actions https://github.com/github/securitylab/actions
Projects https://github.com/github/securitylab/projects
Models https://github.com/github/securitylab/models
Security and quality https://github.com/github/securitylab/security
Insights https://github.com/github/securitylab/pulse
[Java] CWE-295 - Incorrect Hostname Verification - MitMhttps://github.com/github/securitylab/issues/108#top
The Bug SlayerSubmissions to The Bug Slayer bountyhttps://github.com/github/securitylab/issues?q=state%3Aopen%20label%3A%22The%20Bug%20Slayer%22
https://github.com/intrigus-lgtm
intrigus-lgtmhttps://github.com/intrigus-lgtm
on May 27, 2020https://github.com/github/securitylab/issues/108#issue-626036592
GitHub Advisory Databasehttps://github.com/advisories
https://github.com/laurent-clouet/sheepit-client/pull/240/fileshttps://github.com/laurent-clouet/sheepit-client/pull/240/files
Lombokhttps://projectlombok.org/
This "hack"http://anthonywhitford.com/lombok.maven/lombok-maven-plugin/faq.html#alt-src-setup
CVE-2020-13955https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-13955
CVE-2020-26234https://github.com/advisories/GHSA-44cw-p2hm-gpf6
CVE-2020-17514https://github.com/advisories/GHSA-qwv7-pm3r-wfcw
herehttps://lgtm.com/projects/g/apache/fineract/snapshot/a28948c8c98837a5fc580fbbc489322aafdc3d2b/files/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/processor/TwilioHookProcessor.java?sort=name&dir=ASC&mode=heatmap#L79
OTP tokenshttps://github.com/apache/fineract/blob/cf7d38adbcf0bc197fec2a43cd32a69ade81e44f/fineract-provider/src/main/java/org/apache/fineract/infrastructure/security/service/TwoFactorServiceImpl.java#L104
GHSA-9657-33wf-rmvxhttps://github.com/openMF/mifos-mobile/security/advisories/GHSA-9657-33wf-rmvx
github/codeql#3581https://github.com/github/codeql/pull/3581
The Bug SlayerSubmissions to The Bug Slayer bountyhttps://github.com/github/securitylab/issues?q=state%3Aopen%20label%3A%22The%20Bug%20Slayer%22
https://github.com
Termshttps://docs.github.com/site-policy/github-terms/github-terms-of-service
Privacyhttps://docs.github.com/site-policy/privacy-policies/github-privacy-statement
Securityhttps://github.com/security
Statushttps://www.githubstatus.com/
Communityhttps://github.community/
Docshttps://docs.github.com/
Contacthttps://support.github.com?tags=dotcom-footer

Viewport: width=device-width


URLs of crawlers that visited me.