Likes Likes:  0
Resultaten 1 tot 3 van de 3
Geen

Onderwerp: php source patch

  1. #1
    php source patch
    geregistreerd gebruiker
    164 Berichten
    Ingeschreven
    28/04/08

    Locatie
    Wetteren

    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    0 Berichten zijn liked


    Registrar SIDN: nee
    KvK nummer: nvt
    Ondernemingsnummer: nvt

    Thread Starter

    php source patch

    We hebben hier een server staan die met mod_vhost_alias werkt en dus met VirtualDocumentRoot.

    Het nadeel is echter dat je op die manier geen openbasedir kan instellen, wat dus zeker moet veranderen.

    Ik had een patch gevonden om de openbasedir automatisch in te stellen op de virtualdocumentroot, hiervoor heb ik de php source file fopen_wrappers.c moeten aanpassen en php opnieuw moeten compilen en installen.

    Hier kan je de patch vinden:
    http://wiki.preshweb.co.uk/doku.php?...remassvhosting

    Hierdoor werkte dit, maar het nadeel is dat je via de patch geen andere dirs aan de openbasedir kan toevoegen. Enkel dus de documentroot is toegankelijk op deze manier. Waardoor er bijvoorbeeld ook geen sessies en dergelijke kunnen aangemaakt worden in de /tmp dir. Hiervoor moet die patch dus aangepast worden. Iets dat waarschijnlijk niet al teveel werk is maar mijn ervaring in C is gering. Ik heb al geprobeerd om met strcat bijvoorbeeld in de source ":/tmp" enzo te concatineren met de openbasedir, maar dan wou m'n php niet meer compilen. Waarschijnlijk gewoon een fout in m'n code, zoals ik al zei heb ik weinig ervaring in C.

    Iemand enig idee hoe je dit zou kunnen doen?

    Code:
    if ((strcmp(PG(open_basedir), "VIRTUAL_DOCUMENT_ROOT") == 0) && SG(request_info).path_translated && *SG(request_info).path_translated ) {
    	strlcpy(local_open_basedir, SG(request_info).path_translated, sizeof(local_open_basedir));
    	local_open_basedir_sub=strstr(local_open_basedir,SG(request_info).request_uri);
    	if (local_open_basedir_sub) *local_open_basedir_sub = '\0';
    } else
    Daar moet ik dus ergens de string ":/tmp" kunnen aanplakken, ik weet dat dit misschien niet de beste oplossing is, maar het is maar voor één server en als ik zo uit de nood ben is dat voldoende.

    Wat ik al had geprobeerd is dit, maar dan wou m'n php dus niet meer compilen:

    Code:
    char odirpathsuf[]=":/tmp";
    
    if ((strcmp(PG(open_basedir), "VIRTUAL_DOCUMENT_ROOT") == 0) && SG(request_info).path_translated && *SG(request_info).path_translated ) {
    	strlcpy(local_open_basedir, SG(request_info).path_translated, sizeof(local_open_basedir));
    	local_open_basedir_sub=strstr(local_open_basedir,SG(request_info).request_uri);
    	if (local_open_basedir_sub) *local_open_basedir_sub = '\0';
    	strcat(local_open_basedir,odirpathsuf);
    } else
    Graag hulp

  2. #2
    php source patch
    geregistreerd gebruiker
    164 Berichten
    Ingeschreven
    28/04/08

    Locatie
    Wetteren

    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    0 Berichten zijn liked


    Registrar SIDN: nee
    KvK nummer: nvt
    Ondernemingsnummer: nvt

    Thread Starter
    Niemand een idee?

  3. #3
    php source patch
    geregistreerd gebruiker
    1.913 Berichten
    Ingeschreven
    23/10/03

    Locatie
    Enschede (+ London)

    Post Thanks / Like
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)
    33 Berichten zijn liked


    Naam: Max
    Registrar SIDN: ja
    KvK nummer: 08119406
    Ondernemingsnummer: -

    Citaat Oorspronkelijk geplaatst door GuusDeGraeve Bekijk Berichten
    Waardoor er bijvoorbeeld ook geen sessies en dergelijke kunnen aangemaakt worden in de /tmp dir.
    Je realiseert je wel dat indien je de sessies van alle gebruikers in /tmp opslaat, je een beveiligingslek hebt?
    Iedereen kan dan immers bij de sessie gegevens van andere websites, en daarmee de inlogsystemen van webapplicaties omzeilen.

Webhostingtalk.nl

Contact

  • Rokin 113-115
  • 1012 KP, Amsterdam
  • Nederland
  • Contact
© Copyright 2001-2026 Webhostingtalk.nl.
Web Statistics