Plugin Umstellung

Fragen zur Installation von CONTENIDO 4.9? Probleme bei der Konfiguration? Hinweise oder Fragen zur Entwicklung des Systemes oder zur Sicherheit?
Antworten
homtata
Beiträge: 1145
Registriert: Mi 14. Jan 2004, 14:41
Kontaktdaten:

Plugin Umstellung

Beitrag von homtata »

Hallo,

ich versuche gerade, mein altes Plugin "T2T Backup" auf 4.9.0 umzustellen.
Ich bin soweit gekommen, dass der Menüpunkt immerhin im Backend angezeigt wird. Klicke ich nun dort drauf, erhalte ich die Fehlermeldung:

Code: Alles auswählen

Parameter check failed! (area=t2t_backup)
Ich kann damit aber nichts anfangen und habe keine Idee, wo der Fehler liegen könnte.
Die zugrunde liegende plugin.xml ist sehr schlank und lautet:

Code: Alles auswählen

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<plugin>
    <general active="1">
        <plugin_name>t2t_backup</plugin_name>
        <plugin_foldername>t2t_backup</plugin_foldername>
        <uuid>B4E61321-68A0-7621-D3DC-4C3EA4F4B3A0</uuid>
        <description>Datenbank-Backup-Tool</description>
        <author>Viktor Lehmann</author>
        <copyright>TONE2TONE e.K., Viktor Lehmann, Heidelberg</copyright>
        <mail>info@tone2tone.com</mail>
        <website>http://www.tone2tone.com</website>
        <version>1.0.0</version>
    </general>
    <requirements php="5.2.3">
        <contenido minversion="4.9.0" />
    </requirements>
    <contenido>
        <areas>
            <area>t2t_backup</area>
        </areas>
        <actions>
            <action area="t2t_backup">t2t_backup</action>
        </actions>
        <frames>
             <frame area="t2t_backup" filetype="main" name="t2t_backup/includes/includes.t2t_backup.php" frameId="4" />
        </frames>
        <nav_sub>
            <nav area="t2t_backup" level="0" navm="3">t2t_backup/xml/;navigation/extra/t2t_backup</nav>
        </nav_sub>
    </contenido>
</plugin>
Die dort genannten Dateien existieren (sind aber noch nicht wirklich angepasst).
Hat jemand eine Ahnung, wie ich hier weiterkomme? Mir fehlt grad jede Idee...

LG
xmurrix
Beiträge: 3215
Registriert: Do 21. Okt 2004, 11:08
Wohnort: Augsburg
Hat sich bedankt: 4 Mal
Danksagung erhalten: 17 Mal
Kontaktdaten:

Re: Plugin Umstellung

Beitrag von xmurrix »

Der Text "Parameter check failed! (...)" wird in der Datei "contenido/classes/class.requestvalidator.php", schau mal nach, was genau die Klasse cRequestValidator da moniert...

Das Loggen (siehe data/config/production/config.http_check.php) sollte per default aktiviert sein, schau mal nach, was in der data/logs/security.txt drin steht...

Gruß
xmurrix
CONTENIDO Downloads: CONTENIDO 4.10.1
CONTENIDO Links: Dokumentationsportal, FAQ, API-Dokumentation
CONTENIDO @ Github: CONTENIDO 4.10 - Mit einem Entwicklungszweig (develop-branch), das viele Verbesserungen/Optimierungen erhalten hat und auf Stabilität und Kompatibilität mit PHP 8.0 bis 8.2 getrimmt wurde.
homtata
Beiträge: 1145
Registriert: Mi 14. Jan 2004, 14:41
Kontaktdaten:

Re: Plugin Umstellung

Beitrag von homtata »

Heyho,

danke für den Hinweis! Also, in der log-Datei steht:

Code: Alles auswählen

    Query String: area=t2t_backup&contenido=1koi1sl95282jen9vgpoa5j2e0tj8a03
    Bad parameter: area
    POST array: Array
Aber wie kann "area" ein "bad parameter" sein, wenn das doch sonst überall klappt bei den anderen plugins?
Hm.
xmurrix
Beiträge: 3215
Registriert: Do 21. Okt 2004, 11:08
Wohnort: Augsburg
Hat sich bedankt: 4 Mal
Danksagung erhalten: 17 Mal
Kontaktdaten:

Re: Plugin Umstellung

Beitrag von xmurrix »

In der "config/production/config.http_check.php" steht folgendes drin:

Code: Alles auswählen

...
$aCheck['GET']['area'] = cRequestValidator::CHECK_AREASTRING;
...
$aCheck['POST']['area'] = cRequestValidator::CHECK_AREASTRING;
...
Die Konstante cRequestValidator::CHECK_AREASTRING ist ein regulärer Ausdruck und akzeptiert nur die Zeichen a-z, A-Z und Unterstrich (_). Du hast in deinem area-Parameter eine Zahl und das wird das Problem sein.

Entweder du änderst "t2t_backup" in "t_to_t_backup" oder du erstellst eine "config/production/config.http_check.local.php" und überschreibst die Konfiguration mit folgendem Inhalt:

Code: Alles auswählen

<?php
$aCheck['GET']['area'] = '/^[a-z0-9_]*$/i';
$aCheck['POST']['area'] = '/^[a-z0-9_]*$/i';
Kannst auch anstatt '/^[a-z0-9_]*$/i' die Konstante cRequestValidator::CHECK_PRIMITIVESTRING verwenden, wobei das auch Leerzeichen zulässt, was beim area-Parameter eigentlich nicht sein soll...

Gruß
xmurrix
CONTENIDO Downloads: CONTENIDO 4.10.1
CONTENIDO Links: Dokumentationsportal, FAQ, API-Dokumentation
CONTENIDO @ Github: CONTENIDO 4.10 - Mit einem Entwicklungszweig (develop-branch), das viele Verbesserungen/Optimierungen erhalten hat und auf Stabilität und Kompatibilität mit PHP 8.0 bis 8.2 getrimmt wurde.
homtata
Beiträge: 1145
Registriert: Mi 14. Jan 2004, 14:41
Kontaktdaten:

Re: Plugin Umstellung

Beitrag von homtata »

Hallo Murat,

Du rettest mir mal wieder den Tag. Danke für deine Hilfe - das wars tatsächlich (verwirrend, weil es diese Einschränkung so bisher nicht gab). Dann halte ich mich lieber an die Standards, dann muss ich bei zukünftigen Updates nicht an irgendwelche Sonderlocken denken.
Ich teste das Ding weiter und werds dann möglichst bald wieder hier zur Verfügung stellen.

Merci und Grüße!
Antworten