Northwestern Tideline · news

Lithuanian company websites in October 2026: WordPress, PHP and DMARC in public data

What 890 company homepages and their DNS records show without touching anything: 60 % run WordPress, 37 % of the sites that disclose PHP run an end-of-life branch, and 77 % of the domains have no enforcing DMARC policy. Method, counts and arithmetic included.

Contents10 sections

This is a count, not an audit. On 2026-10-24 we requested the public homepage of each website on our prospect lists once and read the public DNS records of the domain: what anyone with a browser and a DNS lookup can see, nothing behind a login. It is not a random sample of Lithuanian companies.

The hosts are websites tied to a company code on our own outreach lists; we have not analysed the sector or size composition of those lists for this post, so every percentage below describes this sample, not the country.

What we looked at and how

  • Population. 932 Lithuanian hosts, each tied to a company code on our outreach lists. 19 were unreachable, 9 disallowed our user agent in robots.txt and were skipped, and 14 answered without a recognisable technology. That leaves 890 sites with at least one technology detected (932 − 19 − 9 − 14 = 890), the denominator for the site-level figures.
  • One request per host. A single GET of the public homepage with a named user agent, after reading robots.txt; we recorded response headers, HTML markers (meta generator tag, asset paths) and DNS MX and TXT records. No other path was requested, nothing was tested, no company is named.
  • Reading the counts. "WordPress" means its markers were visible in the HTML; a PHP version counts only when the server disclosed it in an X-Powered-By header. The counts are exact for what is publicly visible and lower bounds for what exists.

Content management systems

CMS or componentSitesShare
WordPress535 of 89060.1 %
Next.js14 of 8901.6 %
Drupal13 of 8901.5 %
PrestaShop12 of 8901.3 %
Joomla11 of 8901.2 %
WooCommerce (on WordPress)95 of 53517.8 %
Contact Form 7 (on WordPress)217 of 53540.6 %
Elementor (on WordPress)164 of 53530.7 %
Slider Revolution (on WordPress)78 of 53514.6 %

Six in ten sites run WordPress; the other four named systems together are 50 of 890 (5.6 %). The plugins matter because a WordPress site is updated plugin by plugin, and each one can be left behind. How to check your own site against a plugin advisory is in WordPress plugin vulnerabilities: how to know in an hour.

WordPress branches

The version was publicly visible on 356 of 535 WordPress sites (66.5 %). Our branch tally totals 359 readings, three more than 356; the raw data does not say why, so we report the tally as recorded and compute shares against 359.

For the "current" column we read wordpress.org/news on 2026-10-24: the latest stable release was 7.1.3, a maintenance and security release with 7 security fixes published on 2026-10-06; 7.2 was at Beta 1 (2026-10-20). So 7.1 is the current branch; a visible branch does not show the point release.

BranchReadingsShare of 359Note
7.116245.1 %Current branch (7.1.3 released 2026-10-06)
7.0308.4 %One major behind
6.0 – 6.911331.5 %6.9 × 25, 6.8 × 28, 6.7 × 16, 6.6 × 7, 6.5 × 9, 6.4 × 9, 6.3 × 3, 6.2 × 7, 6.1 × 1, 6.0 × 8
5.0 – 5.83910.9 %
4.2 – 4.9154.2 %

So 30 + 113 + 39 + 15 = 197 of 359 readings (54.9 %) are on a branch older than the current one, and 54 (15.0 %) on 5.x or 4.x. From the outside the number shows only the branch, not whether security fixes still arrive. The 179 WordPress sites that hide their version (535 − 356) are not safer for hiding it; they are simply not counted.

PHP branches and support status

A PHP version was disclosed by 124 of 890 sites (13.9 %). Support status is from php.net, read on 2026-10-24: security fixes for 8.2 end on 2026-12-31, for 8.3 on 2027-12-31, for 8.4 on 2028-12-31 and for 8.5 on 2029-12-31. Branch 8.1 reached end of life on 2025-12-31; everything older ended earlier.

PHP branchSitesShare of 124Status on php.net (2026-10-24)
8.51713.7 %Active support; security fixes until 2029-12-31
8.454.0 %Active support; security fixes until 2028-12-31
8.32621.0 %Security fixes only, until 2027-12-31
8.23024.2 %Security fixes only, until 2026-12-31
8.1129.7 %End of life since 2025-12-31
8.054.0 %End of life since 2023-11-26
7.41411.3 %End of life since 2022-11-28
7.343.2 %End of life since 2021-12-06
7.0 – 7.243.2 %End of life since 2020-11-30 or earlier (7.2 × 1, 7.1 × 2, 7.0 × 1)
5.2 – 5.675.6 %End of life since 2018-12-31 or earlier (5.6 × 3, 5.4 × 2, 5.3 × 1, 5.2 × 1)

The arithmetic: 12 + 5 + 14 + 4 + 4 + 7 = 46 of 124 sites (37.1 %) run a PHP branch that receives no security fixes; 78 (62.9 %) run a supported one. The 30 sites on 8.2 lose security support on 2026-12-31, 68 days after our observation date; if nothing changes, 46 + 30 = 76 of 124 (61.3 %) will be unsupported on 2027-01-01.

That is arithmetic on today's counts, not a forecast. What "end of life" means in practice is in PHP supported versions in 2026.

Email authentication: DMARC and SPF

For email we read only DNS. RFC 7489 defines three policy values: with p=none the domain owner "requests no specific action be taken" on failing mail; with p=quarantine failing mail is to be treated "as suspicious"; with p=reject receivers are asked "to reject email that fails the DMARC mechanism check".

Only quarantine and reject do anything to a forged message that claims to come from your domain.

DMARC policyDomainsShare of 890
No DMARC record43548.9 %
p=none24727.8 %
p=quarantine14316.1 %
p=reject657.3 %

The arithmetic: 435 + 247 = 682 of 890 domains (76.6 %) have no enforcing policy; 143 + 65 = 208 (23.4 %) do. Of the 455 domains that publish a record (890 − 435), 247 (54.3 %) stopped at p=none, the monitoring stage. SPF is present on 866 of 890 domains (97.3 %), so the gap is not awareness but finishing the job.

The MX records of 378 domains (42.5 %) point to Microsoft 365 and those of 76 (8.5 %) to Google Workspace. Getting from none to reject without losing legitimate mail is in DMARC p=reject for companies.

Three smaller signals

  • HSTS (RFC 6797: a site declares itself "accessible only via secure connections"): 201 of 890 sites (22.6 %).
  • Cloudflare in front: 190 (21.3 %); that is the network in front, not the software behind it.
  • Server header disclosing a version: 66 (7.4 %). Easy to bring to zero.

What it means (vertinimas)

All four tables show one pattern: the first step is widely taken, the last step is not. SPF is on 97 % of domains, DMARC enforcement on 23 %. WordPress is everywhere, the current branch on fewer than half of the visible installations. Supported PHP is on 63 % of disclosing sites today and, on current counts, 39 % from January.

None of this is a verdict on a single company; a site on an old branch may be patched by its host. It shows where the unfinished work is, from public data alone. For companies under the Lithuanian transposition of NIS2, a supervisory authority can read the same signals; see NIS2 in Lithuania: KSIS and what companies must do.

Three actions for this week

  1. Ask which PHP branch your site runs, and write the answer down. Your host sees it in the hosting panel in a minute. 8.1 or older is already outside security support; 8.2 needs a plan before 2026-12-31.
  2. Read your own DMARC record. Look up the TXT record at _dmarc.yourdomain.lt. No record, or p=none, means a forged message from your domain is not stopped. Move to quarantine, read the reports for a few weeks, then reject.
  3. Get the WordPress branch and the plugin list in writing from whoever maintains the site. The current release on 2026-10-24 was 7.1.3. A one-line monthly note ends the guessing.

If you would rather have someone read these public signals every month and say, in plain Lithuanian or English, what changed and what to do first, that is what Northwestern Tideline does. We never go beyond the public homepage and DNS without your written authorisation; write to us and we start with your own domain.

The wider context is in Cybersecurity for companies in the age of AI.

Frequently asked questions

Is this a representative study of Lithuanian company websites?

No. The 890 sites are websites tied to a company code on our own prospect lists; we have not analysed the sector or size composition of those lists for this post. The percentages describe this sample only. The method is public and repeatable: one homepage request per host after robots.txt, response headers, HTML markers and DNS records, observed on 2026-10-24.

Did you scan or test these websites?

No. Each site received exactly one request for its public homepage with a named user agent, after we read its robots.txt; 9 sites that disallowed us were skipped. No other path was requested and nothing was tested. Everything else came from public DNS. We never go further than that without written authorisation.

Which PHP branches are still supported in October 2026?

According to php.net on 2026-10-24: 8.2 receives security fixes until 2026-12-31, 8.3 until 2027-12-31, 8.4 until 2028-12-31 and 8.5 until 2029-12-31. Branch 8.1 reached end of life on 2025-12-31, and everything older is end of life as well. In our sample 46 of the 124 sites that disclose PHP (37.1 %) were on an end-of-life branch.

What is the difference between DMARC p=none, p=quarantine and p=reject?

RFC 7489 defines them: p=none asks receivers to take no specific action on failing mail (monitoring only), p=quarantine asks them to treat failing mail as suspicious, and p=reject asks them to reject it. In our sample 435 of 890 domains had no DMARC record, 247 were at p=none, 143 at p=quarantine and 65 at p=reject, so 76.6 % had no enforcing policy.

How do I check my own site against these figures?

Ask your host or developer for the PHP branch and the WordPress core version in writing, and compare them with php.net and wordpress.org (the current WordPress release on 2026-10-24 was 7.1.3). Look up the TXT record at _dmarc.yourdomain and read the p= value. If you would like a monthly reading of these public signals, Northwestern Tideline provides that; we start with your own domain.

Sources

  1. 01

    Northwestern Tideline passive observation of 932 Lithuanian company hosts from our prospect lists: one homepage GET per host after robots.txt, response headers, HTML markers, DNS MX/TXT; raw counts as quoted in the text

    accessed 

  2. 02

    PHP: Supported Versions (branches 8.2, 8.3, 8.4, 8.5 with active and security support end dates)

    Open the source accessed 

  3. 03

    PHP: Unsupported Branches (end-of-life dates for 8.1 and older)

    Open the source accessed 

  4. 04

    WordPress News, Releases category (7.1 “Mary Lou” 2026-08-19, 7.1.1, 7.1.2, 7.1.3, 7.2 Beta 1 2026-10-20)

    Open the source accessed 

  5. 05

    WordPress 7.1.3 Maintenance and Security Release (7 security fixes and 4 bug fixes)

    Open the source accessed 

  6. 06

    RFC 7489, Domain-based Message Authentication, Reporting, and Conformance (DMARC), section 6.3: policy values none, quarantine, reject

    Open the source accessed 

  7. 07

    RFC 6797, HTTP Strict Transport Security (HSTS)

    Open the source accessed 

How this guide was prepared

Northwestern Solutions wrote this guide from the texts of the laws and other sources listed above. The legal statements were compared with those texts; the date of the check is shown with the sources. The parties and amounts in the examples are invented. This is not legal or tax advice: for an unusual transaction, ask an accountant.

Found an inaccuracy? .