An cás reatha: PHP2Shell. Ceadaíonn dhá leochaileacht chriticiúla PHP (CVSS 9.2) cód mailíseach gan logáil isteach. Paistí ar fáil ón 21 Deireadh Fómhair 2026.Cad atá le déanamh anois →

expose_php agus ceanntásca Server: faisnéis leagain a cheilt

Luann PHP, Nginx agus Apache a n-uimhir leagain i ngach freagra de réir réamhshocraithe. Ní chosnaíonn sé sin in aghaidh ionsaithe, ach tugann sé liosta áisiúil amas do scanóirí. Seo conas a mhúchann tú é agus conas a choinníonn tú an forbhreathnú mar sin féin.

Staid Am léitheoireachta: 6 nóim.Cruatú agus cumraíocht

Go achomair: Le expose_php = Off i php.ini imíonn an ceanntásc X-Powered-By: PHP/…. Baineann server_tokens off; in Nginx agus ServerTokens Prod agus ServerSignature Off in Apache leis sin. Ní dhéanann sé sin aon fhreastalaí níos sábháilte, ach baineann sé liosta leaganacha réitithe de scanálacha uathoibrithe. Seiceálann tú do staid phaistithe féin ina dhiaidh sin tríd an mbainisteoir pacáistí agus próisis, ní trí cheanntásca.

An cárta gnó i ngach freagra

An té a bhí ag iarraidh a fháil amach tar éis an 21 Deireadh Fómhair 2026 cé mhéad freastalaí a thaispeánann seanleagan PHP fós, ní raibh air a bheith ag cuardach i bhfad. Luann go leor freastalaithe gréasáin a leagan PHP i ngach freagra aonair, mar shampla mar X-Powered-By: PHP/8.2.20. Léann seirbhísí cuardaigh ar fud an Idirlín an fhaisnéis seo, agus chomhaireamh Unit 42 de chuid Palo Alto Networks níos mó ná 22,6 milliún cás nochta, a bhféadfadh a bheith leochaileach, do PHP2Shell.

Do ionsaitheoirí is aicearra í faisnéis den sórt sin. Is féidir leo spriocanna a réamhsórtáil in ionad triail a bhaint as go dall. Do oibritheoirí, ar an láimh eile, tá sí gan úsáid, mar ní chruthaíonn sí fiú do staid phaistithe féin: is minic a sheachadann dáiltí ceartúcháin mar backport gan uimhir leagain nua.

Léiríonn an t-alt seo cá nochtann PHP agus an freastalaí gréasáin faisnéis leagain agus conas a mhúchann tú í. Deir sé go hoscailte freisin cad a thugann sé sin agus cad nach dtugann.

Cá bhfuil faisnéis leagain le feiceáil

Níl leagan PHP ach ar cheann de roinnt áiteanna. Is fiú súil iomlán a chaitheamh, mar go ndéanann áit amháin dearmadta na bearta eile a laghdú ar luach.

Áit an fhionnachtana Sampla Múch trí
Ceanntásc HTTP ó PHP X-Powered-By: PHP/8.3.x expose_php = Off i php.ini
Ceanntásc HTTP an fhreastalaí gréasáin Server: nginx/1.x nó Server: Apache/2.4.x (Debian) server_tokens off; nó ServerTokens Prod
Leathanaigh earráide an fhreastalaí gréasáin líne leagain faoi leathanaigh 404 nó 500 na socruithe céanna, in Apache ServerSignature Off freisin
Ceanntásca an fheidhmchláir iontrálacha X-Powered-By de chreataí fastcgi_hide_header nó Header unset
Comhaid sa webroot comhaid tástála phpinfo(), comhaid readme agus changelog scrios nó bac
Teachtaireachtaí earráide PHP cosáin agus mionsonraí leagain sa bhrabhsálaí display_errors = Off

Is iad comhaid tástála le phpinfo() an fhoinse is torthúla d'ionsaitheoirí. Nochtann siad ní hamháin an leagan, ach an chumraíocht iomlán; tuilleadh san alt Comhaid phpinfo(): cén fáth a gcaithfidh siad imeacht.

expose_php a mhúchadh i php.ini

De réir lámhleabhar PHP tá expose_php cumasaithe de réir réamhshocraithe agus ní féidir é a athrú ach i php.ini, ní sa linn, ní trí .htaccess agus ní ag am rite. Socraigh an luach i php.ini gach modh oibriúcháin a sheachadann suíomhanna gréasáin dá bhrí sin, is é sin ar Debian agus Ubuntu, mar shampla, faoi /etc/php/<version>/fpm/ agus, más cuí, /etc/php/<version>/apache2/.

; php.ini den SAPI gréasáin, ansin atosaigh PHP-FPM nó Apache
expose_php = Off

Má ritheann roinnt leaganacha PHP in éineacht, teastaíonn iontráil ó gach ceann. Tá atosú na seirbhíse ábhartha éigeantach, mar go léann PHP php.ini ag tosú amháin.

Ceanntásca Server a ghiorrú in Nginx agus Apache

Luann Nginx a leagan i gceanntásc Server agus ar leathanaigh earráide de réir réamhshocraithe. Le server_tokens off; ní fhanann ach ainm an táirge. Ina theannta sin is féidir ceanntásc X-Powered-By, a shocraíonn an feidhmchlár féin, a scagadh amach le fastcgi_hide_header. De réir dhoiciméadacht Nginx, ní cheileann Nginx uaidh féin ach Status agus X-Accel-…, ní X-Powered-By.

# sa bhloc http, i bhfeidhm do gach suíomh gréasáin
server_tokens off;
fastcgi_hide_header X-Powered-By;

In Apache rialaíonn ServerTokens an ceanntásc Server agus an líne leagain faoi leathanaigh earráide ag an am céanna. De réir dhoiciméadacht Apache níl an socrú i bhfeidhm ach ar fud an fhreastalaí, ní do gach VirtualHost. Toisc go dtéann freagraí PHP-FPM trí mod_proxy_fcgi isteach i dtábla ceanntásc eile ná freagraí an fhreastalaí féin, socraigh an baint sa dá leagan.

# cumraíocht ar fud an fhreastalaí, m.sh. /etc/apache2/conf-available/security.conf
ServerTokens Prod
ServerSignature Off

# teastaíonn mod_headers
<IfModule mod_headers.c>
    Header unset X-Powered-By
    Header always unset X-Powered-By
</IfModule>

Seiceáil an chumraíocht sula n-athluchtaíonn tú le nginx -t nó le apachectl configtest. Conas a chumasaíonn tú cosaint go gníomhach do chuairteoirí trí cheanntásca, mar shampla le HSTS nó le Content-Security-Policy, déanann an treoir Ceanntásca slándála do shuímh gréasáin cur síos air.

Conas a sheiceálann tú an toradh ón taobh amuigh

Seiceáil gach fearann ina aonar tar éis an aistrithe, más féidir leathanach earráide freisin. Ní sheolann na horduithe seo a leanas ach gnáthiarratais chuig do shuíomhanna gréasáin féin:

# Ceanntásca an leathanaigh bhaile
curl -sI https://www.example.de/ | grep -iE '^(server|x-powered-by):'
# Ceanntásca leathanaigh nach bhfuil ann
curl -sI https://www.example.de/gibt-es-nicht-4711 | grep -iE '^(server|x-powered-by):'

Táthar ag súil le ceanntásc Server gan uimhir leagain agus gan X-Powered-By. Má tá leagan PHP ann fós, tá php.ini eile gníomhach den chuid is mó nó níor atosaíodh seirbhís fós. Má tá CDN os comhair an fhreastalaí, seiceáil an bunfhreastalaí go díreach freisin, a mhéid atá sé inrochtana.

Leid

Coinnigh an leagan PHP go hinmheánach mar sin féin: i do chuntar freastalaithe, le staid pacáiste agus dáta na seiceála deireanaí. Cruthaíonn tú do staid phaistithe tríd an bhfreastalaí, mar a thuairiscítear ag Leagan PHP agus staid phaistithe a sheiceáil i gceart.

An méid a thugann ceilt agus an méid nach dtugann

Go macánta, is beart beag é faisnéis leagain a mhúchadh le hiarracht bheag. Laghdaíonn sé an dóchúlacht go dtiocfaidh tú chun solais i gcuardach spriocdhírithe ar leaganacha áirithe, agus laghdaíonn sé an fhaisnéis a fhaigheann ionsaitheoir gan stró.

Ní chosnaíonn sé, áfach, in aghaidh ionsaithe uathoibrithe a sheolann a n-iarratais go simplí chuig gach freastalaí inrochtana. Déanann an t-alt Mórscanadh tar éis PHP gan phaiste cur síos ar conas a oibríonn scanadh mór den sórt sin. In aghaidh PHP2Shell ní chabhraíonn ach an nuashonrú go PHP 8.5.12, 8.4.27, 8.3.36 nó 8.2.35 nó backport deimhnithe, agus atosú gach próisis PHP ina dhiaidh.

Os a choinne sin is sicir an-úsáideach é seo: an té a mhúchann faisnéis leagain go seachtrach, caithfidh sé a leaganacha a thaifeadadh go glan go hinmheánach. I gcás cosúil le PHP2Shell cinneann an forbhreathnú sin go díreach cé chomh tapa a fhaigheann tú amach cé na freastalaithe a bhfuil tionchar orthu.

Is ciallmhar é a cheilt dá bhrí sin mar chuid de bhuncruachan, ní mar bheart aonair. Baineann sé leis an seicliosta céanna le haschuir earráide múchta, comhaid tástála scriosta agus luachanna cumraíochta faoi ghlas.

Conas a chabhraíonn PHP SOS go nithiúil?

  • Áiteanna fionnachtana a thaifeadadh: Seiceálaimid ceanntásca, leathanaigh earráide agus webroot gach fearainn ar fhaisnéis leagain agus comhaid tástála dearmadta.
  • An chumraíocht a oiriúnú: Socraímid expose_php, ceanntásca Server agus scagairí ceanntásca i ngach leagan PHP agus i ngach freastalaí gréasáin agus atosaímid na seirbhísí ar bhealach rialaithe.
  • An staid phaistithe a chruthú go hinmheánach: Doiciméadaímid leaganacha agus staid pacáistí san áit a mbaineann siad leis, sa chuntar in ionad sa cheanntásc HTTP.
  • Sa chruachan a ionchorprú: Tá an beart mar chuid dár gcruachan freastalaí do fhreastalaithe gréasáin PHP.

Ceisteanna coitianta

An ndéanann expose_php = Off mo fhreastalaí slán?

Ní dhéanann. Ní bhaineann an socrú ach an fhaisnéis leagain as an gceanntásc HTTP. Fanann leagan leochaileach PHP leochaileach, agus is minic a thriail ionsaithe uathoibrithe a n-iarratais ar gach freastalaí inrochtana ar aon nós. Ach baineann tú réamhroghnú simplí de ionsaitheoirí agus laghdaíonn tú infheictheacht i gcuardaitheoirí freastalaithe.

An féidir liom expose_php a shocrú sa linn FPM nó trí .htaccess?

De réir lámhleabhar PHP, ní féidir expose_php a athrú ach i php.ini. Socraigh an luach i php.ini gach SAPI gréasáin dá bhrí sin agus atosaigh PHP-FPM nó Apache ina dhiaidh sin.

Cén fáth a bhfeicim X-Powered-By in ainneoin expose_php = Off?

Ansin socraíonn an feidhmchlár nó creat an ceanntásc féin den chuid is mó, nó tá php.ini eile gníomhach. Bain an ceanntásc sa fhreastalaí gréasáin freisin: le fastcgi_hide_header in Nginx nó Header unset in Apache.

Conas a sheiceálaim mo staid phaistithe mura bhfuil an leagan infheicthe a thuilleadh?

Tríd an bhfreastalaí féin: bainisteoir pacáistí, changelog pacáiste leis na huimhreacha CVE agus am tosaithe na bpróiseas PHP. Ní raibh an fhaisnéis sa cheanntásc HTTP ina fianaise ar aon nós, mar go gcuireann dáiltí backports isteach go minic gan uimhir leagain nua.

Foinsí

Teagmháil láithreach

Cuireann gach uair an chloig leis. Scríobh chugainn anois.

Déan cur síos gearr ar an gcóras, leagan PHP agus an rud a thug tú faoi deara. Cuirfimid scéala chugat, soiléireoimid an cás agus oibreoimid go cianda go dtí go mbeidh an teagmhas dúnta agus doiciméadaithe.

Cabhair láithreach