Security report for tcl3d.org
Paul Obermeier · Technology · N/a
High risk. 11 critical or high findings in Network security, Security headers and 3 other checks.
Tcl3D is an open source software project providing 3D graphics capabilities to the Tcl scripting language by wrapping OpenGL and other 3D libraries using SWIG. The project is maintained by Paul Obermeier and has been active since 2005, positioning itself as a niche technology resource for developers interested in Tcl-based 3D programming. The website offers documentation, downloads, demos, and historical information, with source code hosted on SourceForge and additional builds available via BAWT. Technically, the site uses a modern Bootstrap framework with jQuery, delivering a responsive and user-friendly experience. However, the site lacks explicit privacy and cookie policies, which is a compliance gap. Security posture is moderate with HTTPS enabled but missing DNSSEC and security headers. No signs of tracking or advertising are present, indicating a privacy-respecting approach. Overall, the domain registration is consistent with the project's history, enhancing trustworthiness.
Scanned
NIS2 and GDPR posture
- GDPR outside view
- 50/ 100 · Medium
- Checks completed
- 7of 7
NIS2 Art. 21(2)
- (a) Risk analysis and security policies: Not visible from outside
- (b) Incident handling: One indicator
- (c) Business continuity, backups and crisis management: Not visible from outside
- (d) Supply chain security: Not visible from outside
- (e) Secure acquisition, development and maintenance, including vulnerability handling: Partly checked
- (f) Assessing the effectiveness of security measures: Not visible from outside
- (g) Cyber hygiene and security training: Not visible from outside
- (h) Cryptography and encryption: Partly checked
- (i) HR security, access control and asset management: One indicator
- (j) Multi-factor authentication and secured communications: Not visible from outside
This scan rated NIS2 with an earlier keyword method that is no longer shown; rescan for the per-article view. Risk management, continuity, supply chain, training, MFA, management oversight (Art. 20) and incident reporting (Art. 23) need internal evidence, and Guard cannot tell whether NIS2 applies to this organisation.
GDPR is indicative only, based on publicly visible signals: Articles 7, 12, 13 and 32 of Regulation (EU) 2016/679 and Article 5(3) of the ePrivacy Directive. Not a certification or legal assessment.
Priority findings
11 findings rated critical or high. Fix these first.
Network security
Services reachable from the internet are the first thing attackers probe. Anything open that does not need to be should be closed.
- Critical
Critical Service Exposed: MySQL
Port 3306 (MySQL) is publicly accessible - MySQL - Database server
What to do: Immediately restrict access to MySQL using firewall or VPN
- NIS2 21(2)(e)
- IR 2024/2690 6.7.2(f): Implementing Regulation (EU) 2024/2690, Annex point 6.7.2(f): Network security
- NIST CM-7: NIST SP 800-53 Rev. 5 CM-7: Least Functionality
- NIST SC-7: NIST SP 800-53 Rev. 5 SC-7: Boundary Protection
- High
High-Risk Service Exposed: FTP
Port 21 (FTP) is publicly accessible - FTP - Often unencrypted file transfer
What to do: Consider restricting access to FTP or implementing strong authentication
- NIS2 21(2)(e)
- IR 2024/2690 6.7.2(f): Implementing Regulation (EU) 2024/2690, Annex point 6.7.2(f): Network security
- NIST CM-7: NIST SP 800-53 Rev. 5 CM-7: Least Functionality
- NIST SC-7: NIST SP 800-53 Rev. 5 SC-7: Boundary Protection
- Critical
Security headers
Security headers are instructions your web server sends to every visitor’s browser. Missing ones leave visitors more exposed to attacks such as clickjacking and injected scripts.
- High
Missing Strict-Transport-Security header
Forces HTTPS connections
What to do: Add "Strict-Transport-Security: max-age=31536000; includeSubDomains; preload"
- CWE-319
- OWASP A04:2025
- ASVS V3.4.1
- RFC 6797 §6.1.1
- Mozilla TLS: Mozilla Server Side TLS 6.0 intermediate: hsts_min_age 63072000
- NIS2 21(2)(h)
- IR 2024/2690 9.2(a): Implementing Regulation (EU) 2024/2690, Annex point 9.2(a): Cryptography
- NIST SC-8: NIST SP 800-53 Rev. 5 SC-8: Transmission Confidentiality and Integrity
- High
Missing X-Frame-Options header
Prevents clickjacking attacks
What to do: Add "X-Frame-Options: DENY" or "X-Frame-Options: SAMEORIGIN"
- CWE-1021
- OWASP A06:2025
- CAPEC-103
- ASVS V3.4.6
- OWASP Secure Headers: OWASP Secure Headers Project recommends X-Frame-Options: deny
- RFC 7034
- High
Missing Content-Security-Policy header
Controls resources the browser is allowed to load
What to do: Implement a Content-Security-Policy appropriate for your application
- ASVS V3.4.3
- OWASP Secure Headers: OWASP Secure Headers Project recommends Content-Security-Policy: default-src 'self'; form-action 'self'; base-uri 'self'; object-src 'none';…
- High
GDPR outside view
These are the privacy signals visitors and data protection authorities look for under GDPR.
- High
No Privacy Policy found
GDPR requires a clear and accessible privacy policy
What to do: Add a comprehensive privacy policy page and link to it prominently
- GDPR Art. 12
- GDPR Art. 13
- NIST PT-5: NIST SP 800-53 Rev. 5 PT-5: Privacy Notice
- High
No Cookie Policy found
GDPR requires clear information about cookie usage
What to do: Add a dedicated cookie policy explaining cookie usage and purposes
- High
No Cookie Consent Banner found
GDPR requires explicit consent for non-essential cookies
What to do: Implement a cookie consent banner that appears on first visit
- GDPR Art. 7
- ePrivacy Art. 5(3)
- NIST PT-4: NIST SP 800-53 Rev. 5 PT-4: Consent
- High
Need hands-on remediation? Email guard@offseq.com
Keep watching tcl3d.org
This scan found 31 issues across 6 checks. Monitoring re-runs those checks daily, emails you when something material changes and records each fix, so you can show progress.
Daily monitoring
Recommended€25per month
- TLS certificates and expiry
- DNS records
- SPF, DKIM and DMARC
- Security headers
- GDPR and NIS2 posture
- Exposed services
- Third-party trackers
- Security score drift
Email alerts on material changes and an exportable JSON history of every change.
Billed monthly to your card. Cancel anytime. See sample alerts.
Full report
€39.90one-time
- The complete analysis as a PDF you can cite
- Email delivery with an unlock code
- Lifetime access to this report
Prices incl. 21% VAT. Secure checkout by Mollie; sold by SEQ SIA, Latvia.
Results by check
Each check with its score, findings and the evidence it collected.
How this score is calculated
The security score runs 0–100, higher is better. It is the plain average of the security checks that completed in this scan, each counted equally. A check that could not run is left out: it counts neither as a pass nor as a fail.
Counted in this score
- SSL/TLS
- 42
- Security headers
- 15
- Email security
- 55
- DNS health
- 60
- Network security
- 0
- GDPR outside view
- 50
- Average
- 37
Not counted
- NIS2 outside view: Re-weights evidence from the TLS, email, DNS, network and hygiene checks, so counting it would count that evidence twice. Shown on its own.
- OffSeq Observations: An AI reading of the site, useful context but not reproducible evidence. Shown on its own.
Findings that cap the score at 49
Each of these is serious on its own, so while any is present the site cannot rate better than high risk, however good the other checks are.
- The certificate is not trusted by browsers
- The website is not served over HTTPS
- A database, remote desktop, file-sharing or Telnet service is reachable from the internet · found on this site
- The page loads a script from a compromised source
- The domain registration has expired
- SPF authorises every server to send mail as the domain
Partial scans
When the site blocks Guard or most checks cannot run, the score covers only the checks that ran (usually DNS and email), is capped at 75 and is shown as partial, without a risk level.
Risk levels
- Critical0–25
- High26–49
- Medium50–75
- Low76–100
Technical appendix
Business context, site observations and technical notes gathered during the scan, and the standards behind each reference.
Business context
Business profile
Security posture
Recommendations
- Enable DNSSEC to enhance domain name system security and prevent spoofing.
- Implement standard security headers such as Content-Security-Policy, X-Frame-Options, and Strict-Transport-Security to mitigate common web attacks.
- Publish clear privacy and cookie policies to improve compliance with GDPR and other regulations.
- Add a vulnerability disclosure policy or security.txt file to facilitate responsible reporting of security issues.
- Consider adding contact emails or security contact channels explicitly on the website to improve incident response readiness.
Site observations
Automated reading of the public site. Ratings are indicative.
Business
- Company
- Paul Obermeier
- Description
- Tcl3D offers 3D functionality of OpenGL and other 3D libraries at the Tcl scripting level by wrapping these libraries using SWIG. The package is open source under the 3-clause BSD license and includes multiple modules.
- Key services
- 3D graphics functionality via Tcl scripting, Open source software modules, Source code and executables distribution
- Content quality
- good
- Branding
- consistent
Technology
- Stack
- HTML5, Bootstrap, jQuery, SWIG
- Frameworks
- Bootstrap
- Performance
- moderate
- Mobile
- good
- Accessibility
- basic
- SEO
- basic
Security
- Observed score
- 60/100
- Good practices seen
- HTTPS enabled (implied by canonical URL https://www.tcl3d.org/index.html)
- Domain status clientTransferProhibited
Analytics and tracking
- Tracking level
- minimal
- Privacy practices
- poor
Advertising
- Transparency
- poor
Site quality
- Design
- good
- User experience
- good
- Content relevance
- good
- Navigation
- good
- Professionalism
- good
- Trustworthiness
- high
Key observations
- Website is a niche open source project site focused on Tcl scripting and 3D graphics.
- No privacy or cookie policies found, which is a compliance gap.
- No security.txt or vulnerability disclosure information present.
- No contact emails or phone numbers explicitly found on main page; contact form exists on separate page.
- No advertising or tracking detected, indicating privacy-respecting approach.
- Technical stack is modern and uses Bootstrap and jQuery for UI.
- Content is well structured and professional with clear navigation.
- No social media links detected in provided HTML content.
- WHOIS data is transparent and domain is long-established.
Technical notes
Notes
Standards and sources
Reference chips under each finding point to the standard, regulation or specification the finding relates to. They are taken from the official datasets below and mapped conservatively: a finding with no defensible link shows none. NIS2 and GDPR references mark where a finding is relevant evidence, not a compliance verdict. Implementing Regulation (EU) 2024/2690 binds digital infrastructure and digital service providers; for other entities it is the most detailed public reading of the Article 21 measures. WCAG, EN 301 549, European Accessibility Act and Web Accessibility Directive references name the requirement an automated accessibility rule relates to; they are not a conformance verdict.
- MITRE CWE (opens in a new tab)4.20 (2026-04-30) · CWE Terms of Use (free use with attribution, © MITRE)
- OWASP Top 10:2025 (opens in a new tab)2025 (membership per CWE 4.20) · CC BY-SA 4.0
- MITRE CAPEC (opens in a new tab)3.9 (2023-01-24) · CAPEC Terms of Use (free use with attribution, © MITRE)
- OWASP ASVS (opens in a new tab)5.0.0 · CC BY-SA 4.0
- OWASP Web Security Testing Guide (opens in a new tab)latest (checklist.json, master) · CC BY-SA 4.0
- OWASP Secure Headers Project (opens in a new tab)2026-10-18 · Apache-2.0
- Mozilla Server Side TLS (intermediate) (opens in a new tab)6.0 · MPL-2.0
- NIST SP 800-53 Rev. 5 (OSCAL catalog) (opens in a new tab)5.2.0 · Public domain (US Government work)
- Directive (EU) 2022/2555 (NIS2) (opens in a new tab)OJ L 333, 27.12.2022 · EUR-Lex reuse under Commission Decision 2011/833/EU (© European Union)
- Commission Implementing Regulation (EU) 2024/2690 (opens in a new tab)OJ L, 18.10.2024 · EUR-Lex reuse under Commission Decision 2011/833/EU (© European Union)
- Regulation (EU) 2016/679 (GDPR) (opens in a new tab)OJ L 119, 4.5.2016 · EUR-Lex reuse under Commission Decision 2011/833/EU (© European Union)
- Directive 2002/58/EC (ePrivacy), consolidated (opens in a new tab)19.12.2009 · EUR-Lex reuse under Commission Decision 2011/833/EU (© European Union)
- RFC Editor metadata (opens in a new tab)per-RFC (obsolete RFCs rejected) · IETF Trust Legal Provisions (metadata only)
- NIST CSRC, W3C TR, IETF Datatracker, EDPB, EUR-Lex CELLAR and gesetze-bayern.de (opens in a new tab)per document · Titles and links only
- NIST NVD CVE API 2.0 (opens in a new tab)live records · Public domain (NVD); CVE® records © MITRE, free use
- W3C WCAG 2.2 (opens in a new tab)W3C Recommendation (wcag.json) · W3C Software and Document License
- ETSI EN 301 549 (opens in a new tab)V3.2.1 (2021-03), clause headings · Clause numbers and titles only (© ETSI)
- Directive (EU) 2019/882 (European Accessibility Act) (opens in a new tab)OJ L 151, 7.6.2019 · EUR-Lex reuse under Commission Decision 2011/833/EU (© European Union)
- Directive (EU) 2016/2102 (Web Accessibility Directive) (opens in a new tab)OJ L 327, 2.12.2016 · EUR-Lex reuse under Commission Decision 2011/833/EU (© European Union)
Retrieved 2026-10-25
Feedback on this report
Rate this report, add an optional comment, and tell us if you want a security specialist to follow up.
Reviews of this site
Share your experience with tcl3d.org. Every review is verified by email and published after moderation.
Community rating
No published reviews yet. Be the first to review tcl3d.org.