50 Commits
Author SHA1 Message Date
Shreyas Zare 694b25c023 app assembly version updated for release. 2026-10-11 20:40:38 +05:30
Shreyas Zare ff7c0473bd BlockPage: Updated cert generation code to add Enhanced Key Usage extension. 2026-10-10 14:55:33 +05:30
Shreyas Zare d68047b349 app asssembly version updated for release. 2026-10-03 19:01:15 +05:30
Shreyas Zare bb4bca44a2 BlockPage: Updated ServeDefaultPageAsync() to fix XSS issue. 2026-10-03 13:27:41 +05:30
Shreyas Zare ff316ed0d2 app assembly version updated for release. 2026-07-05 17:19:41 +05:30
Shreyas Zare 6bf66a8549 minor changes and code refactoring done. 2026-06-27 18:47:22 +05:30
Roy Hagland 7db87a45ed BlockPageApp/IDnsServer: fix wrong group shown in blocking info (#1913)
When a client hits the block page, the Block Page App makes a secondary
DNS query to retrieve the EDE blocking info to display (group name,
blocklist URL, etc.). This query went through DirectQueryAsync which
hardcodes IPENDPOINT_ANY_0 (0.0.0.0) as the remote endpoint.

The Advanced Blocking App's networkGroupMap matched 0.0.0.0 against the
catch-all entry, so the blocking info re-query always returned the
catch-all group's response - meaning the group name displayed on the
block page was wrong even though the original block was applied correctly
against the right group.

Added IDnsServer.DirectQueryAsync(DnsDatagram, IPEndPoint, ...) so callers
can supply the real client endpoint. Updated BlockPageApp to pass the
HTTP connection's remote endpoint for the blocking info re-query, so the
correct group is reflected on the page.
2026-06-27 18:30:59 +05:30
Shreyas Zare 2450fc1217 BlockPage: Updated StartWebServerAsync() to support online signing with ca certs for both rsa and ecdsa algorithms, updated implementation to do signing task in a single thread to prevent duplicate siging, and code refactorign changes done. Updated ServeDefaultPageAsync() to cache index page content and auto reload it when file last modified changes. 2026-06-27 18:24:58 +05:30
Roy Hagland e86a47dba2 BlockPageApp: fix three bugs in Online Certificate Signing (#1897)
* BlockPageApp: fix three bugs in Online Certificate Signing

Pass CA cert as additional cert in SslStreamCertificateContext so the
full chain is included in the TLS handshake for per-domain certs.
Previously null was passed, causing chain validation failures on
clients that did not already have the CA cached.

Clamp certNotBefore to the CA cert NotBefore. The code backdates
per-domain certs by 30 minutes for clock skew tolerance, but if the CA
was created within the last 30 minutes this fell before the CA own
NotBefore and threw ArgumentException, silently falling back to
serving the CA cert as the server cert for up to 30 minutes.

Use X509SignatureGenerator overload of CertificateRequest.Create so
that ECC and ECDSA CA certs are supported. The previous overload
required the CA and CSR to use the same key algorithm, so any ECC CA
failed with ArgumentException.

* BlockPageApp: support {BLOCKING-INFO} substitution when serving from wwwroot

When serveBlockPageFromWebServerRoot is enabled, requests to / and /index.html
were served directly by the static files middleware, bypassing ServeDefaultPageAsync
entirely so {BLOCKING-INFO} was never substituted and the raw placeholder appeared
in the page.

Fix: an interceptor middleware registered before UseStaticFiles catches GET requests
to / and /index.html and routes them through ServeDefaultPageAsync, which now reads
the content from the wwwroot index.html file on disk before performing the substitution.

The default wwwroot/index.html example is updated to include {BLOCKING-INFO} so users
customising the block page can see how to use it.
2026-06-27 17:53:57 +05:30
Shreyas Zare f5f242006f Updated code to use new WriteLog() method which accepts exception parameter. 2026-06-13 13:53:27 +05:30
Shreyas Zare db4380bc9a Updated dotnet to v10.0. App assembly version updated for release. 2026-04-25 15:57:13 +05:30
Shreyas Zare a98b673397 app-docs: updated app documentation with minor fixes and additions. 2026-04-19 17:14:44 +05:30
Shreyas Zare b6fe70d18f Merge branch 'app-docs-pr' into app-docs 2026-04-18 18:43:44 +05:30
Zafer Balkan 78c94010f9 Added README for Apps (#1704)
* Added sample README

* Initial version of documentation of all default apps

Signed-off-by: Zafer Balkan <[email protected]>

* Updated README files

* Standardization

* Minor fixes

* Pushed README files when building

* Fix default values

* Fixed documentation error

* Config update

* Added GeoDB notes

* Fixed the mistake in IPv6 example

---------

Signed-off-by: Zafer Balkan <[email protected]>
2026-04-18 18:41:41 +05:30
Shreyas Zare 3561fe94fd Updated apps to support conmments in config and APP record data. 2026-04-18 13:35:47 +05:30
Shreyas Zare b49ade495c BlockPage: updated app to implement online cert signing feature to allow SSL MiTM when app's root cert is installed on clients. implemented nullable. Code refactoring changes done. 2026-03-14 18:04:21 +05:30
Shreyas Zare 7d77b850c2 app assembly version updated 2025-12-20 18:44:33 +05:30
Shreyas Zare f8f0df99f1 BlockPage: updated app to enable web server compression. 2025-12-20 15:18:32 +05:30
Shreyas Zare d365d67937 Upgraded to .NET 9. App assembly version updated for release. 2025-11-08 15:58:42 +05:30
Shreyas Zare 11a93d4bae BlockPage: code refactoring changes done. 2025-11-08 12:21:07 +05:30
Shreyas Zare ee7b9fc21f app assembly version updated for release. 2025-02-15 15:52:21 +05:30
Shreyas Zare a1c37c0347 fixed minor typo 2025-02-15 13:17:10 +05:30
Shreyas Zare 521caade7b BlockPage: fixed issue with kestral local addresses. 2025-02-15 12:33:02 +05:30
Shreyas Zare d2bcadae57 app assembly version updated for release. 2025-02-02 16:46:30 +05:30
Shreyas Zare b8113f6f7c BlockPage: Updated app to support showing blocking info on block page. 2025-02-02 15:56:48 +05:30
Shreyas Zare a3c98fb57d app assembly version updated for release. 2024-11-09 21:14:23 +05:30
Shreyas Zare dfb62b172d BlockPageApp: minor change in cache header. 2024-11-09 19:38:00 +05:30
Shreyas Zare 7e57fef85a app assembly version updated for release. 2024-09-22 17:12:00 +05:30
Shreyas Zare a7f83ecbdc app assembly version updated for release. 2024-06-15 17:42:39 +05:30
Shreyas Zare 6d84f23e3c BlockPage: added support for .p12 cert extension. Updated implementation to use specific file name for self signed cert. 2024-05-19 14:48:31 +05:30
Shreyas Zare 6090efe6fe BlockPageApp: minor change. 2024-03-16 12:34:23 +05:30
Shreyas Zare 6dbd8a2ea1 app assembly version updated for release 2024-02-04 21:59:17 +05:30
Shreyas Zare 169ea717f5 BlockPage: updated implementation to use Kestrel web server. 2024-02-04 16:57:25 +05:30
Shreyas Zare 7383fb0c03 BlockPage app assembly version updated to 4.3.1 for release. 2023-12-30 12:31:37 +05:30
Shreyas Zare 7171341e90 BlockPage: fixed minor issue with request content length limit. 2023-12-30 12:28:12 +05:30
Shreyas Zare 9527462626 BlockPage: updated app to support running multiple web servers. 2023-12-30 12:22:53 +05:30
Shreyas Zare b86b48fc9f app assembly version updated for release. 2023-07-23 19:04:43 +05:30
Shreyas Zare ad20e2f6e2 BlockPage.App: Updated code to use cert collection. 2023-07-23 19:03:06 +05:30
Shreyas Zare d2432cb983 app assembly version updated for release. 2023-03-11 17:02:44 +05:30
Shreyas Zare 3b314225d3 BlockPage: updated app to support "enableWebServer" config option to stop the web server from starting when not needed without need to uninstall the app. 2023-03-05 19:27:30 +05:30
Shreyas Zare 12db30dcb7 app assembly version updated for release 2023-02-18 17:51:13 +05:30
Shreyas Zare c05f8be48e BlockPageApp: updated ProcessConnectionAsync() to set a timeout when authenticating SSL connection. 2023-02-05 13:53:29 +05:30
Shreyas Zare 4412f03132 BlockPage: removed newtonsoft. 2022-12-17 13:58:47 +05:30
Shreyas Zare 939dcafc09 assembly version updated for release 2022-12-04 16:37:15 +05:30
Shreyas Zare 106948dd91 assembly version updated for release 2022-11-26 14:09:20 +05:30
Shreyas Zare eb7951e5bd app assembly version updated for release 2022-03-26 17:39:42 +05:30
Shreyas Zare b72ccdcf5f BlockPage: minor changes done. 2022-01-23 17:01:19 +05:30
Shreyas Zare ea56f24a21 app assembly versions updated for release 2021-10-23 13:45:41 +05:30
Shreyas Zare 59d6433f1a BlockPage: added support for automatic self signed certificate. 2021-10-09 16:44:23 +05:30
Shreyas Zare 0c649ad241 BlockPageApp: project name refactored 2021-09-26 17:21:07 +05:30