SearXNG is a free internet metasearch engine which aggregates results from various search services and databases. Users are neither tracked nor profiled.
Find a file
Markus Heiser 8fa54ffddf [mod] Shuffle httpx's default ciphers of a SSL context randomly.
From the analyse of @9Ninety [1] we know that DDG (and may be other engines / I
have startpage in mind) does some kind of TLS fingerprint to block bots.

This patch shuffles the default ciphers from httpx to avoid a cipher profile
that is known to httpx (and blocked by DDG).

[1] https://github.com/searxng/searxng/issues/2246#issuecomment-1467895556

----

From `What Is TLS Fingerprint and How to Bypass It`_

> When implementing TLS fingerprinting, servers can't operate based on a
> locked-in whitelist database of fingerprints.  New fingerprints appear
> when web clients or TLS libraries release new versions. So, they have to
> live off a blocklist database instead.
> ...
> It's safe to leave the first three as is but shuffle the remaining ciphers
> and you can bypass the TLS fingerprint check.

.. _What Is TLS Fingerprint and How to Bypass It:
   https://www.zenrows.com/blog/what-is-tls-fingerprint#how-to-bypass-tls-fingerprinting

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
Closes: https://github.com/searxng/searxng/issues/2246
2023-03-19 13:40:31 +01:00
.github chore: Set permissions for GitHub actions (#3225) 2022-11-04 16:50:43 +00:00
dockerfiles Let uWSGI workers and threads be adjustable from env 2023-01-11 14:53:36 +01:00
docs Merge pull request #2027 from dalf/fix_2018 2023-02-20 12:17:38 +01:00
examples Fix whitespaces 2016-07-11 18:52:37 +07:00
searx [mod] Shuffle httpx's default ciphers of a SSL context randomly. 2023-03-19 13:40:31 +01:00
searxng_extra [fix] make docs: NameError: name 'DOC' is not defined 2023-03-02 16:43:32 +01:00
src/brand [simple] ImageLayout.watch: img_load_error.svg if img load fails 2021-11-29 21:10:13 +01:00
tests Add "Auto-detected" as a language. 2023-02-17 15:17:36 +00:00
utils [doc] slight improvements to the doc of the settings (base_url) 2023-02-17 12:08:58 +01:00
.coveragerc [mod] use github actions instead of travis 2020-11-17 15:09:06 +01:00
.dir-locals.el [emacs] .dir-locals.el: add Language Server Protocol Support (LSP) 2023-02-11 13:36:53 +01:00
.dockerignore [fix] tidy up ignore lists .gitignore & .dockerignore 2021-06-22 16:55:30 +02:00
.gitattributes [fix] update .gitattributes 2021-06-22 20:34:39 +02:00
.gitignore SearXNG version: fix make docker 2023-01-20 10:46:00 +00:00
.nvmrc Node: update to node 16.15.1 2022-06-25 14:07:39 +02:00
.pylintrc [mod] make python code pylint 2.16.1 compliant 2023-02-10 13:59:21 +01:00
.weblate weblate: migration to https://translate.codeberg.org/ 2023-01-21 15:45:12 +00:00
.yamllint.yml [enh] add test.yamllint - lint yaml files 2021-06-05 17:41:24 +02:00
AUTHORS.rst [doc] add example for enabling an engine disabled by default 2023-02-12 18:33:38 +01:00
babel.cfg [fix] jinja/babel: WithExtension and AutoEscapeExtension are built-in now. 2022-03-25 09:42:12 +01:00
CHANGELOG.rst [fix] typos / reported by @kianmeng in searx PR-3366 2022-09-27 18:32:14 +02:00
CONTRIBUTING.md reference docs.searxng.org 2022-01-02 21:18:29 +01:00
Dockerfile SearXNG version: fix make docker 2023-01-20 10:46:00 +00:00
LICENSE [fix] full AGPLv3+ license according to #382 2015-07-04 18:23:54 +02:00
Makefile [mod] install developer tools by: make node.env.dev 2023-02-11 13:33:43 +01:00
manage [mod] install developer tools by: make node.env.dev 2023-02-11 13:33:43 +01:00
package.json [mod] install developer tools by: make node.env.dev 2023-02-11 13:33:43 +01:00
PULL_REQUEST_TEMPLATE.md Add PR template and contribution guidelines 2020-07-10 17:10:02 +02:00
pyrightconfig-ci.json [mod] add test.pyright to test & ci.test targets 2022-01-23 08:00:39 +01:00
pyrightconfig.json [fix] pyrightconfig.json include only dedicated folders in the test 2022-01-23 08:00:39 +01:00
README.rst weblate: migration to https://translate.codeberg.org/ 2023-01-21 15:45:12 +00:00
requirements-dev.txt Merge pull request #2214 from searxng/dependabot/pip/master/selenium-4.8.2 2023-03-15 18:50:51 +01:00
requirements.txt Bump markdown-it-py from 2.1.0 to 2.2.0 2023-02-24 07:56:40 +00:00
SECURITY.md [enh] add security policy 2022-01-25 00:56:20 +01:00
setup.py [mod] replace /help by /info pages and include pages in project docs 2022-03-12 11:36:31 +01:00



Privacy-respecting, hackable metasearch engine

If you are looking for running instances, ready to use, then visit searx.space. Otherwise jump to the user, admin and developer handbooks you will find on our homepage.

SearXNG install SearXNG homepage SearXNG wiki AGPL License Issues commits weblate SearXNG logo


Contact

Come join us if you have questions or just want to chat about SearXNG.

Matrix

#searxng:matrix.org

IRC

#searxng on libera.chat which is bridged to Matrix.

Differences to searx

SearXNG is a fork of searx. Here are some of the changes:

User experience

  • Huge update of the simple theme:
    • usable on desktop, tablet and mobile
    • light and dark versions (you can choose in the preferences)
    • support right-to-left languages
    • see the screenshots
  • the translations are up to date, you can contribute on Weblate
  • the preferences page has been updated:
    • you can see which engines are reliable or not
    • engines are grouped inside each tab
    • each engine has a description
  • thanks to the anonymous metrics, it is easier to report a bug of an engine and thus engines get fixed more quickly
  • administrator can block and/or replace the URLs in the search results

Setup

  • you don't need Morty to proxy the images even on a public instance
  • you don't need Filtron to block bots, we implemented the builtin limiter
  • you get a well maintained Docker image, now also built for ARM64 and ARM/v7 architectures
  • alternatively we have up to date installation scripts

Contributing is easier

  • readable debug log
  • contributions to the themes are made easier, check out our Development Quickstart guide
  • a lot of code cleanup and bug fixes
  • the dependencies are up to date

Translations

We need translators, suggestions are welcome at https://translate.codeberg.org/projects/searxng/searxng/

Make a donation

You can support the SearXNG project by clicking on the donation page: https://docs.searxng.org/donate.html