Zugriff verursacht eine PHP Exception

  • Joomla Version
    5.0.3
    PHP Version
    PHP 8.3.x
    Hoster
    Mittwald

    Moin Moin,

    ich konnte auf meinen Seiten folgendes VErhalten feststellen. Wenn böse Menschen/Maschinen meine Seiten mit folgender URL aufrufen:

    https://domain.de/api/index.php/v1/users?public=true

    dann erzeugt das einen Fehler:

    Code
    A PHP Exception occurred on your site. Here you can find the stack trace:
    Exception Type: Joomla\CMS\Access\Exception\AuthenticationFailed
    File: /html/cms/libraries/src/Application/ApiApplication.php

    Ich merke das, weil mir Akeeba Admin Tools dann bescheid sagt.

    So sieht die zeitliche Abfolge aus:

    Das steht im Stack:

    Spoiler anzeigen

    A PHP Exception occurred on your site. Here you can find the stack trace:

    Exception Type: Joomla\CMS\Access\Exception\AuthenticationFailed

    File: /html/cms/libraries/src/Application/ApiApplication.php

    Line: 317

    Message:

    Code
    #0 /html/cms/libraries/src/Application/ApiApplication.php(110): Joomla\CMS\Application\ApiApplication->route()
    Code
    #1 /html/cms/libraries/src/Application/CMSApplication.php(306): Joomla\CMS\Application\ApiApplication->doExecute()
    Code
    #2 /html/cms/api/includes/app.php(50): Joomla\CMS\Application\CMSApplication->execute()
    Code
    #3 /html/cms/api/index.php(31): require_once('...')
    Code
    #4 {main}

    Request information

    GET variables

    Code
    Array
    Code
    (
    Code
        [public] => true
    Code
    )

    POST variables

    Code
    Array
    Code
    (
    Code
    )

    COOKIE variables

    Code
    Array
    Code
    (
    Code
    )

    REQUEST variables

    Code
    Array
    Code
    (
    Code
        [public] => true
    Code
    )

    SERVER variables

    Code
    Array
    Code
    (
    Code
        [GCONV_PATH] => /usr/local/php/lib64/gconv
    Code
        [LO_PATH] => /usr/local/php/lib64/locale
    Code
        [MAGICK_C0DER_MODULE_PATH] => /usr/local/php/lib64/ImageMagick-7.1.1/modules-Q16HDRI/coders
    Code
        [OPENSSL_CONF] => /etc/ssl/openssl.cnf
    Code
        [PATH] => /bin:/sbin:/usr/bin:/usr/sbin:/usr/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
    Code
        [USER] => p622666
    Code
        [HOME] => /home/www/p622666
    Code
        [PATH_TRANSLATED] => redirect:/index.php/users
    Code
        [PATH_INFO] => /v1/users
    Code
        [SCRIPT_NAME] => /api/index.php
    Code
        [REQUEST_URI] => /api/index.php/v1/users?public=true
    Code
        [QUERY_STRING] => public=true
    Code
        [REQUEST_METHOD] => GET
    Code
        [SERVER_PROTOCOL] => HTTP/1.1
    Code
        [GATEWAY_INTERFACE] => CGI/1.1
    Code
        [REMOTE_PORT] => 37164
    Code
        [SCRIPT_FILENAME] => /home/www/p622666/html/cms/api/index.php
    Code
        [SERVER_ADMIN] => [no address given]
    Code
        [CONTEXT_DOCUMENT_ROOT] => /home/www/p622666/html/cms/
    Code
        [CONTEXT_PREFIX] => 
    Code
        [REQUEST_SCHEME] => https
    Code
        [DOCUMENT_ROOT] => /home/www/p622666/html/cms/
    Code
        [REMOTE_ADDR] => 93.174.93.215
    Code
        [SERVER_PORT] => 443
    Code
        [SERVER_ADDR] => 172.18.36.67
    Code
        [SERVER_NAME] => hebammenpraxisseelenzeit.de
    Code
        [SERVER_SOFTWARE] => Apache
    Code
        [SERVER_SIGNATURE] => 
    Code
        [HTTP_CONNECTION] => keep-alive
    Code
        [HTTP_ACCEPT] => */*
    Code
        [HTTP_ACCEPT_ENCODING] => gzip, deflate
    Code
        [HTTP_USER_AGENT] => python-requests/2.31.0
    Code
        [HTTP_HOST] => hebammenpraxisseelenzeit.de
    Code
        [SSL_TLS_SNI] => hebammenpraxisseelenzeit.de
    Code
        [HTTP_AUTHORIZATION] => 
    Code
        [HTTPS] => on
    Code
        [FCGI_ROLE] => RESPONDER
    Code
        [PHP_SELF] => /api/index.php/v1/users
    Code
        [REQUEST_TIME_FLOAT] => 1711246724.6832
    Code
        [REQUEST_TIME] => 1711246724
    Code
    )

    Kann da jemand von euch was mit anfangen? Soll ich das als Bug melden? Passiert genauso auf all meinen Seiten!

    Lg,

    deltapapa

    WBR from DE-de

    "Hier könnte Ihre Werbung stehen"

  • und könntest du verhindern per zusätzlichem Eintrag in der .htaccess vom Joomla-Root-Dateiordner

    wie es am JoomlaDay DACH 2023 von David auch präsentiert wurde.

    Also dort wo auch die configuration.php liegt:

    Am Anfang der folgenden Stelle der .htaccess einfügen:

    github.com/joomla/joomla-cms/blob/5.0.3/htaccess.txt#L82-L88


    ACHTUNG WICHTIG !

    Aber beachte das du auch noch weitere entsprechende Eintragungen machen mußt wenn außer Joomla noch andere PHP-Anwendungen/PHP-Scripte in diesem Dateiorder oder in einem seiner Dateiunterordner liegen und weiterhin aufrufbar sein sollen...

    Oder auch wenn du z.B. die kickstart.php umbennant hast.

    Denn diese aufrufe werden sonnst auch geblockt!!!

    Wenn ich es richtig verstanden habe kannst du die Zeile:

    Code
    RewriteCond %{REQUEST_URI} !^/api\/index\.php$

    weglassen solange du keine API-Aufrufe erlauben möchtest.