{
    "domain": "socifly.com",
    "whois": {
        "error": null,
        "domain": "socifly.com",
        "checks": [
            {
                "key": "whois",
                "label": "WHOIS",
                "status": "ok",
                "statusLabel": "Geçerli",
                "detail": "Cloudflare, Inc. · bitiş 28.10.2027 (373 gün)",
                "findings": [],
                "data": {
                    "found": true,
                    "days": 373,
                    "locked": true,
                    "reason": null,
                    "name": "socifly.com",
                    "registrar": "Cloudflare, Inc.",
                    "status": [
                        "client transfer prohibited"
                    ],
                    "registered": "2015-10-28",
                    "expires": "2027-10-28",
                    "changed": "2026-09-28",
                    "nameservers": [
                        "lily.ns.cloudflare.com",
                        "rob.ns.cloudflare.com"
                    ],
                    "dnssec": false
                }
            }
        ],
        "findings": [],
        "found": true,
        "registrar": "Cloudflare, Inc.",
        "registered": "2015-10-28",
        "expires": "2027-10-28",
        "changed": "2026-09-28",
        "days": 373,
        "domainStatus": [
            "client transfer prohibited"
        ],
        "nameservers": [
            "lily.ns.cloudflare.com",
            "rob.ns.cloudflare.com"
        ],
        "dnssecSigned": false,
        "status": "ok",
        "statusLabel": "Geçerli",
        "detail": "Cloudflare, Inc. · bitiş 28.10.2027 (373 gün)",
        "ms": 0
    },
    "records": {
        "error": null,
        "rows": [
            {
                "type": "A",
                "name": "@",
                "value": "104.21.80.194",
                "ttl": 300
            },
            {
                "type": "A",
                "name": "@",
                "value": "172.67.153.78",
                "ttl": 300
            },
            {
                "type": "AAAA",
                "name": "@",
                "value": "2606:4700:3030::6815:50c2",
                "ttl": 300
            },
            {
                "type": "AAAA",
                "name": "@",
                "value": "2606:4700:3031::ac43:994e",
                "ttl": 300
            },
            {
                "type": "MX",
                "name": "@",
                "value": "10 mx.yandex.net.",
                "ttl": 300
            },
            {
                "type": "NS",
                "name": "@",
                "value": "lily.ns.cloudflare.com.",
                "ttl": 86400
            },
            {
                "type": "NS",
                "name": "@",
                "value": "rob.ns.cloudflare.com.",
                "ttl": 86400
            },
            {
                "type": "SOA",
                "name": "@",
                "value": "lily.ns.cloudflare.com. dns.cloudflare.com. 2415905144 10000 2400 604800 1800",
                "ttl": 1800
            },
            {
                "type": "TXT",
                "name": "@",
                "value": "MS=ms46111940",
                "ttl": 300
            },
            {
                "type": "TXT",
                "name": "@",
                "value": "brevo-code:8974c31441df48c2b78174b3f0c08fe4",
                "ttl": 300
            },
            {
                "type": "TXT",
                "name": "@",
                "value": "google-site-verification=PUstO_s7fc2loJy4ftGoU8-OAE2wh3ff1Xt4soi9Qqo",
                "ttl": 300
            },
            {
                "type": "TXT",
                "name": "@",
                "value": "google-site-verification=xwCyZQUI8H_1PiGUDlg0uWCbaW2p4G8x9B2rAH5m9ys",
                "ttl": 300
            },
            {
                "type": "TXT",
                "name": "@",
                "value": "tiktok-developers-site-verification=j6VRCiVVDHLZKFmjNZExzJY7P26FGYTd",
                "ttl": 300
            },
            {
                "type": "TXT",
                "name": "@",
                "value": "tiktok-developers-site-verification=rXnKaHVaMJMXSPYwbEsbGVE6IekG1J33",
                "ttl": 300
            },
            {
                "type": "TXT",
                "name": "@",
                "value": "v=spf1 include:_spf.yandex.net include:spf.sendinblue.com ~all",
                "ttl": 300
            },
            {
                "type": "A",
                "name": "www",
                "value": "104.21.80.194",
                "ttl": 300
            },
            {
                "type": "A",
                "name": "www",
                "value": "172.67.153.78",
                "ttl": 300
            },
            {
                "type": "AAAA",
                "name": "www",
                "value": "2606:4700:3030::6815:50c2",
                "ttl": 300
            },
            {
                "type": "AAAA",
                "name": "www",
                "value": "2606:4700:3031::ac43:994e",
                "ttl": 300
            },
            {
                "type": "TXT",
                "name": "_dmarc",
                "value": "v=DMARC1; p=none; rua=mailto:info@socifly.com",
                "ttl": 300
            }
        ],
        "server": "172.64.32.130",
        "partial": false,
        "ms": 16
    },
    "mail": {
        "error": null,
        "checks": [
            {
                "key": "spf",
                "label": "SPF",
                "status": "ok",
                "statusLabel": "Geçerli",
                "detail": "v=spf1 include:_spf.yandex.net include:spf.sendinblue.com ~all · 9/10 DNS araması",
                "findings": [],
                "data": {
                    "record": "v=spf1 include:_spf.yandex.net include:spf.sendinblue.com ~all",
                    "lookups": 9,
                    "all": "~all",
                    "chain": [
                        "_spf.yandex.net",
                        "_spf.yandex.ru",
                        "_spf-ipv6.yandex.ru",
                        "_spf-ipv4-yc.yandex.ru",
                        "_spf-ipv4-yc-a.yandex.ru",
                        "_spf-ipv4-yc-b.yandex.ru",
                        "_spf-ipv4-yc-d.yandex.ru",
                        "_spf-ipv4-x.yandex.ru",
                        "spf.sendinblue.com"
                    ]
                }
            },
            {
                "key": "dkim",
                "label": "DKIM",
                "status": "warn",
                "statusLabel": "Zayıf",
                "detail": "mail · 1024 bit RSA",
                "findings": [
                    {
                        "level": "warn",
                        "code": "dkim-1024",
                        "title": "DKIM anahtarı 1024 bit (mail)",
                        "text": "Hâlâ kabul ediliyor ama 2048 bit önerilir.",
                        "fix": null
                    }
                ],
                "data": {
                    "found": [
                        {
                            "selector": "mail",
                            "bits": 1024,
                            "type": "RSA",
                            "revoked": false
                        }
                    ]
                }
            },
            {
                "key": "dmarc",
                "label": "DMARC",
                "status": "warn",
                "statusLabel": "Zayıf",
                "detail": "p=none · rua tanımlı · %100",
                "findings": [
                    {
                        "level": "warn",
                        "code": "dmarc-none",
                        "title": "DMARC politikası sadece izliyor (p=none)",
                        "text": "Sahte e-postalar engellenmiyor. Raporları inceledikten sonra quarantine'e geçin.",
                        "fix": "v=DMARC1; p=quarantine; rua=mailto:info@socifly.com"
                    }
                ],
                "data": {
                    "record": "v=DMARC1; p=none; rua=mailto:info@socifly.com",
                    "tags": {
                        "v": "DMARC1",
                        "p": "none",
                        "rua": "mailto:info@socifly.com"
                    }
                }
            },
            {
                "key": "mta-sts",
                "label": "MTA-STS",
                "status": "neutral",
                "statusLabel": "Yok",
                "detail": "Kayıt yok (isteğe bağlı; SMTP şifrelemesini zorunlu kılar)",
                "findings": [
                    {
                        "level": "info",
                        "code": "mtasts-missing",
                        "title": "MTA-STS yok",
                        "text": "Gelen e-postalarda TLS zorunlu değil; ortadaki adam saldırısına açık. İsteğe bağlı ama önerilir.",
                        "fix": "_mta-sts.socifly.com TXT \"v=STSv1; id=202610191248\""
                    }
                ],
                "data": []
            },
            {
                "key": "bimi",
                "label": "BIMI",
                "status": "neutral",
                "statusLabel": "Yok",
                "detail": "Kayıt yok (logo gösterimi için DMARC enforce gerekli)",
                "findings": [],
                "data": []
            }
        ],
        "findings": [
            {
                "level": "warn",
                "code": "dkim-1024",
                "title": "DKIM anahtarı 1024 bit (mail)",
                "text": "Hâlâ kabul ediliyor ama 2048 bit önerilir.",
                "fix": null
            },
            {
                "level": "warn",
                "code": "dmarc-none",
                "title": "DMARC politikası sadece izliyor (p=none)",
                "text": "Sahte e-postalar engellenmiyor. Raporları inceledikten sonra quarantine'e geçin.",
                "fix": "v=DMARC1; p=quarantine; rua=mailto:info@socifly.com"
            },
            {
                "level": "info",
                "code": "mtasts-missing",
                "title": "MTA-STS yok",
                "text": "Gelen e-postalarda TLS zorunlu değil; ortadaki adam saldırısına açık. İsteğe bağlı ama önerilir.",
                "fix": "_mta-sts.socifly.com TXT \"v=STSv1; id=202610191248\""
            }
        ],
        "ms": 52
    },
    "dnssec": {
        "error": null,
        "checks": [
            {
                "key": "dnssec",
                "label": "DNSSEC",
                "status": "warn",
                "statusLabel": "İmzasız",
                "detail": "DS kaydı yok · bölge imzalanmamış",
                "findings": [
                    {
                        "level": "warn",
                        "code": "dnssec-unsigned",
                        "title": "DNSSEC etkin değil",
                        "text": "Kayıtlar imzalı değil; sahte DNS yanıtları (önbellek zehirleme) tespit edilemez. DNS sağlayıcınızda DNSSEC'i açıp DS kaydını alan adı kayıt firmanıza girin.",
                        "fix": null
                    }
                ],
                "data": {
                    "steps": [
                        {
                            "zone": ". (kök)",
                            "keys": "KSK 20326, 38696 · imzalar geçerli",
                            "status": "ok",
                            "label": "Güven kökü"
                        },
                        {
                            "zone": "com",
                            "keys": "DS → DNSKEY 19718 · imzalar geçerli",
                            "status": "ok",
                            "label": "Doğrulandı"
                        },
                        {
                            "zone": "socifly.com",
                            "keys": "DS yok",
                            "status": "unsigned",
                            "label": "İmzasız"
                        }
                    ],
                    "algorithm": null,
                    "expires": null,
                    "secure": false
                }
            }
        ],
        "findings": [
            {
                "level": "warn",
                "code": "dnssec-unsigned",
                "title": "DNSSEC etkin değil",
                "text": "Kayıtlar imzalı değil; sahte DNS yanıtları (önbellek zehirleme) tespit edilemez. DNS sağlayıcınızda DNSSEC'i açıp DS kaydını alan adı kayıt firmanıza girin.",
                "fix": null
            }
        ],
        "ms": 146,
        "steps": [
            {
                "zone": ". (kök)",
                "keys": "KSK 20326, 38696 · imzalar geçerli",
                "status": "ok",
                "label": "Güven kökü"
            },
            {
                "zone": "com",
                "keys": "DS → DNSKEY 19718 · imzalar geçerli",
                "status": "ok",
                "label": "Doğrulandı"
            },
            {
                "zone": "socifly.com",
                "keys": "DS yok",
                "status": "unsigned",
                "label": "İmzasız"
            }
        ],
        "algorithm": null,
        "expires": null,
        "secure": false,
        "status": "warn",
        "statusLabel": "İmzasız",
        "detail": "DS kaydı yok · bölge imzalanmamış"
    },
    "nameservers": {
        "error": null,
        "zone": "socifly.com",
        "check": {
            "key": "ns",
            "label": "Nameserver",
            "status": "warn",
            "statusLabel": "Tek ağ",
            "detail": "2 sunucu · 1 farklı ağ (ASN) · seri numaraları eşleşiyor",
            "findings": [
                {
                    "level": "warn",
                    "code": "ns-single-asn",
                    "title": "Tüm nameserver'lar aynı ağda (AS13335)",
                    "text": "O ağda kesinti olursa alan adı erişilemez. Farklı bir sağlayıcıda ikincil nameserver ekleyin.",
                    "fix": null
                }
            ],
            "data": {
                "servers": [
                    {
                        "host": "lily.ns.cloudflare.com",
                        "ip": "172.64.32.130",
                        "asn": 13335,
                        "holder": "CLOUDFLARENET - Cloudflare, Inc.",
                        "loc": null,
                        "ms": 2.8,
                        "serial": 2415905144,
                        "status": "ok",
                        "statusLabel": "Yetkili",
                        "w": 100
                    },
                    {
                        "host": "rob.ns.cloudflare.com",
                        "ip": "108.162.193.140",
                        "asn": 13335,
                        "holder": "CLOUDFLARENET - Cloudflare, Inc.",
                        "loc": null,
                        "ms": 2,
                        "serial": 2415905144,
                        "status": "ok",
                        "statusLabel": "Yetkili",
                        "w": 71
                    }
                ],
                "asns": [
                    13335
                ]
            }
        },
        "servers": [
            {
                "host": "lily.ns.cloudflare.com",
                "ip": "172.64.32.130",
                "asn": 13335,
                "holder": "CLOUDFLARENET - Cloudflare, Inc.",
                "loc": null,
                "ms": 2.8,
                "serial": 2415905144,
                "status": "ok",
                "statusLabel": "Yetkili",
                "w": 100
            },
            {
                "host": "rob.ns.cloudflare.com",
                "ip": "108.162.193.140",
                "asn": 13335,
                "holder": "CLOUDFLARENET - Cloudflare, Inc.",
                "loc": null,
                "ms": 2,
                "serial": 2415905144,
                "status": "ok",
                "statusLabel": "Yetkili",
                "w": 71
            }
        ],
        "findings": [
            {
                "level": "warn",
                "code": "ns-single-asn",
                "title": "Tüm nameserver'lar aynı ağda (AS13335)",
                "text": "O ağda kesinti olursa alan adı erişilemez. Farklı bir sağlayıcıda ikincil nameserver ekleyin.",
                "fix": null
            }
        ],
        "ms": 239
    },
    "extra": {
        "error": null,
        "checks": [
            {
                "key": "mx",
                "label": "MX",
                "status": "warn",
                "statusLabel": "Uyarı",
                "detail": "1 kayıt · mx.yandex.net",
                "findings": [
                    {
                        "level": "warn",
                        "code": "mx-ptr-mismatch",
                        "title": "PTR kaydı MX adıyla eşleşmiyor (mx.yandex.net)",
                        "text": "77.88.21.249 → mxfront.stable.qloud-b.yandex.net. Tam eşleşme (FCrDNS) olmayınca bazı alıcılar puanı düşürür.",
                        "fix": null
                    },
                    {
                        "level": "warn",
                        "code": "mx-ptr-mismatch",
                        "title": "PTR kaydı MX adıyla eşleşmiyor (mx.yandex.net)",
                        "text": "2a02:6b8::311 → mxfront.stable.qloud-b.yandex.net. Tam eşleşme (FCrDNS) olmayınca bazı alıcılar puanı düşürür.",
                        "fix": null
                    }
                ],
                "data": {
                    "hosts": [
                        {
                            "host": "mx.yandex.net",
                            "pref": 10,
                            "ips": [
                                "77.88.21.249",
                                "2a02:6b8::311"
                            ],
                            "ptr": {
                                "77.88.21.249": [
                                    "mxfront.stable.qloud-b.yandex.net"
                                ],
                                "2a02:6b8::311": [
                                    "mxfront.stable.qloud-b.yandex.net"
                                ]
                            }
                        }
                    ]
                }
            },
            {
                "key": "caa",
                "label": "CAA",
                "status": "warn",
                "statusLabel": "Yok",
                "detail": "Her sertifika otoritesi bu alan adı için sertifika verebilir",
                "findings": [
                    {
                        "level": "warn",
                        "code": "caa-missing",
                        "title": "CAA kaydı yok",
                        "text": "Her sertifika otoritesi bu alan adı için SSL sertifikası verebilir. Kullandığınız CA'yı belirtin.",
                        "fix": "socifly.com CAA 0 issue \"letsencrypt.org\""
                    }
                ],
                "data": []
            },
            {
                "key": "soa",
                "label": "SOA",
                "status": "ok",
                "statusLabel": "Geçerli",
                "detail": "seri 2415905144 · refresh 10000 · retry 2400 · expire 604800 · minimum 1800",
                "findings": [],
                "data": {
                    "mname": "lily.ns.cloudflare.com",
                    "rname": "dns.cloudflare.com",
                    "serial": 2415905144,
                    "refresh": 10000,
                    "retry": 2400,
                    "expire": 604800,
                    "minimum": 1800
                }
            }
        ],
        "findings": [
            {
                "level": "warn",
                "code": "mx-ptr-mismatch",
                "title": "PTR kaydı MX adıyla eşleşmiyor (mx.yandex.net)",
                "text": "77.88.21.249 → mxfront.stable.qloud-b.yandex.net. Tam eşleşme (FCrDNS) olmayınca bazı alıcılar puanı düşürür.",
                "fix": null
            },
            {
                "level": "warn",
                "code": "mx-ptr-mismatch",
                "title": "PTR kaydı MX adıyla eşleşmiyor (mx.yandex.net)",
                "text": "2a02:6b8::311 → mxfront.stable.qloud-b.yandex.net. Tam eşleşme (FCrDNS) olmayınca bazı alıcılar puanı düşürür.",
                "fix": null
            },
            {
                "level": "warn",
                "code": "caa-missing",
                "title": "CAA kaydı yok",
                "text": "Her sertifika otoritesi bu alan adı için SSL sertifikası verebilir. Kullandığınız CA'yı belirtin.",
                "fix": "socifly.com CAA 0 issue \"letsencrypt.org\""
            }
        ],
        "ms": 976
    },
    "ssl": {
        "error": null,
        "checks": [
            {
                "key": "ssl",
                "label": "SSL/HTTP",
                "status": "ok",
                "statusLabel": "Geçerli",
                "detail": "Google Trust Services · 67 gün · TLSv1.3 · HTTP/3",
                "findings": [],
                "data": {
                    "ip": "104.21.80.194",
                    "issuer": "Google Trust Services",
                    "subject": "socifly.com",
                    "sans": 2,
                    "chain": 3,
                    "validTo": "25.12.2026",
                    "days": 67,
                    "verified": true,
                    "protocol": "TLSv1.3",
                    "cipher": "TLS_AES_256_GCM_SHA384",
                    "httpVersion": "HTTP/3",
                    "h3": "var",
                    "redirect": true,
                    "httpStatus": 301,
                    "httpsStatus": 200,
                    "server": "cloudflare",
                    "headers": [
                        {
                            "key": "strict-transport-security",
                            "label": "HSTS",
                            "present": true,
                            "value": "max-age=31536000; includeSubDomains; preload"
                        },
                        {
                            "key": "content-security-policy",
                            "label": "CSP",
                            "present": true,
                            "value": "default-src 'self' *.socifly.com *.google.com *.cloudflare.com *.tikokart.com *.tikocard.com data: blob:; script-src 'self' 'unsafe-inline' 'unsafe-eval' *.socifly.com *.google.com *.gstatic.com *.cloudflare.com *.cloudflareinsights.com code.jquery.com cdn.datatables.net cdn.jsdelivr.net *.googletagmanager.com *.doubleclick.net *.googleadservices.com *.gstatic.com data: blob:; worker-src 'self' blob: https://www.socifly.com *.socifly.com *.google.com *.gstatic.com *.cloudflare.com code.jquery.com cdn.datatables.net cdn.jsdelivr.net; style-src 'self' 'unsafe-inline' *.socifly.com *.googletagmanager.com https://fonts.googleapis.com https://cdn.jsdelivr.net; img-src 'self' *.socifly.com *.google.com *.cloudflare.com *.googleusercontent.com *.googleadservices.com *.wikimedia.org *.google.com.tr *.google.com *.doubleclick.net *.gstatic.com *.googletagmanager.com *.cdninstagram.com *.instagram.com *.cdnfacebook.com data: blob:; font-src 'self' data: *.socifly.com *.google.com *.googleapis.com fonts.gstatic.com; connect-src 'self' *.socifly.com wss://socket.socifly.com https://cloudflareinsights.com *.google.com https://google.com; upgrade-insecure-requests; block-all-mixed-content; frame-src *"
                        },
                        {
                            "key": "x-content-type-options",
                            "label": "X-Content-Type-Options",
                            "present": true,
                            "value": "nosniff"
                        },
                        {
                            "key": "x-frame-options",
                            "label": "X-Frame-Options",
                            "present": true,
                            "value": "SAMEORIGIN"
                        },
                        {
                            "key": "referrer-policy",
                            "label": "Referrer-Policy",
                            "present": true,
                            "value": "same-origin"
                        },
                        {
                            "key": "permissions-policy",
                            "label": "Permissions-Policy",
                            "present": false,
                            "value": null
                        }
                    ],
                    "tlsOk": true
                }
            }
        ],
        "findings": [],
        "ms": 380,
        "ip": "104.21.80.194",
        "issuer": "Google Trust Services",
        "subject": "socifly.com",
        "sans": 2,
        "chain": 3,
        "validTo": "25.12.2026",
        "days": 67,
        "verified": true,
        "protocol": "TLSv1.3",
        "cipher": "TLS_AES_256_GCM_SHA384",
        "httpVersion": "HTTP/3",
        "h3": "var",
        "redirect": true,
        "httpStatus": 301,
        "httpsStatus": 200,
        "server": "cloudflare",
        "headers": [
            {
                "key": "strict-transport-security",
                "label": "HSTS",
                "present": true,
                "value": "max-age=31536000; includeSubDomains; preload"
            },
            {
                "key": "content-security-policy",
                "label": "CSP",
                "present": true,
                "value": "default-src 'self' *.socifly.com *.google.com *.cloudflare.com *.tikokart.com *.tikocard.com data: blob:; script-src 'self' 'unsafe-inline' 'unsafe-eval' *.socifly.com *.google.com *.gstatic.com *.cloudflare.com *.cloudflareinsights.com code.jquery.com cdn.datatables.net cdn.jsdelivr.net *.googletagmanager.com *.doubleclick.net *.googleadservices.com *.gstatic.com data: blob:; worker-src 'self' blob: https://www.socifly.com *.socifly.com *.google.com *.gstatic.com *.cloudflare.com code.jquery.com cdn.datatables.net cdn.jsdelivr.net; style-src 'self' 'unsafe-inline' *.socifly.com *.googletagmanager.com https://fonts.googleapis.com https://cdn.jsdelivr.net; img-src 'self' *.socifly.com *.google.com *.cloudflare.com *.googleusercontent.com *.googleadservices.com *.wikimedia.org *.google.com.tr *.google.com *.doubleclick.net *.gstatic.com *.googletagmanager.com *.cdninstagram.com *.instagram.com *.cdnfacebook.com data: blob:; font-src 'self' data: *.socifly.com *.google.com *.googleapis.com fonts.gstatic.com; connect-src 'self' *.socifly.com wss://socket.socifly.com https://cloudflareinsights.com *.google.com https://google.com; upgrade-insecure-requests; block-all-mixed-content; frame-src *"
            },
            {
                "key": "x-content-type-options",
                "label": "X-Content-Type-Options",
                "present": true,
                "value": "nosniff"
            },
            {
                "key": "x-frame-options",
                "label": "X-Frame-Options",
                "present": true,
                "value": "SAMEORIGIN"
            },
            {
                "key": "referrer-policy",
                "label": "Referrer-Policy",
                "present": true,
                "value": "same-origin"
            },
            {
                "key": "permissions-policy",
                "label": "Permissions-Policy",
                "present": false,
                "value": null
            }
        ],
        "tlsOk": true,
        "status": "ok",
        "statusLabel": "Geçerli",
        "detail": "Google Trust Services · 67 gün · TLSv1.3 · HTTP/3"
    },
    "propagation": {
        "error": null,
        "ttl": 300,
        "type": "A",
        "expected": [
            "104.21.80.194",
            "172.67.153.78"
        ],
        "rows": [
            {
                "name": "Google",
                "ip": "8.8.8.8",
                "loc": "Global",
                "ms": 45.2,
                "status": "fresh",
                "label": "Güncel",
                "answer": "104.21.80.194, 172.67.153.78"
            },
            {
                "name": "Cloudflare",
                "ip": "1.1.1.1",
                "loc": "Global",
                "ms": 4.8,
                "status": "fresh",
                "label": "Güncel",
                "answer": "104.21.80.194, 172.67.153.78"
            },
            {
                "name": "Quad9",
                "ip": "9.9.9.9",
                "loc": "Global",
                "ms": 8.1,
                "status": "fresh",
                "label": "Güncel",
                "answer": "104.21.80.194, 172.67.153.78"
            },
            {
                "name": "OpenDNS",
                "ip": "208.67.222.222",
                "loc": "Global",
                "ms": 70.1,
                "status": "fresh",
                "label": "Güncel",
                "answer": "104.21.80.194, 172.67.153.78"
            },
            {
                "name": "Türk Telekom",
                "ip": "195.175.39.39",
                "loc": "Türkiye",
                "ms": 2.2,
                "status": "fresh",
                "label": "Güncel",
                "answer": "172.67.153.78, 104.21.80.194"
            },
            {
                "name": "AdGuard",
                "ip": "94.140.14.14",
                "loc": "Global",
                "ms": 0.4,
                "status": "fresh",
                "label": "Güncel",
                "answer": "104.21.80.194, 172.67.153.78"
            },
            {
                "name": "Control D",
                "ip": "76.76.2.0",
                "loc": "Global",
                "ms": 18.7,
                "status": "fresh",
                "label": "Güncel",
                "answer": "172.67.153.78, 104.21.80.194"
            },
            {
                "name": "Hurricane Electric",
                "ip": "74.82.42.42",
                "loc": "ABD",
                "ms": 35.8,
                "status": "fresh",
                "label": "Güncel",
                "answer": "172.67.153.78, 104.21.80.194"
            },
            {
                "name": "CleanBrowsing",
                "ip": "185.228.168.9",
                "loc": "Global",
                "ms": 47.2,
                "status": "fresh",
                "label": "Güncel",
                "answer": "172.67.153.78, 104.21.80.194"
            },
            {
                "name": "Yandex",
                "ip": "77.88.8.8",
                "loc": "Rusya",
                "ms": 122.5,
                "status": "fresh",
                "label": "Güncel",
                "answer": "104.21.80.194, 172.67.153.78"
            },
            {
                "name": "Level3",
                "ip": "4.2.2.1",
                "loc": "ABD",
                "ms": 38.2,
                "status": "fresh",
                "label": "Güncel",
                "answer": "104.21.80.194, 172.67.153.78"
            },
            {
                "name": "Neustar UltraDNS",
                "ip": "64.6.64.6",
                "loc": "ABD",
                "ms": 52,
                "status": "fresh",
                "label": "Güncel",
                "answer": "104.21.80.194, 172.67.153.78"
            }
        ],
        "counts": {
            "fresh": 12,
            "stale": 0,
            "empty": 0,
            "timeout": 0
        },
        "responding": 12,
        "pct": 100,
        "ms": 124
    },
    "summary": {
        "error": null,
        "checks": [
            {
                "key": "whois",
                "label": "WHOIS",
                "status": "ok",
                "statusLabel": "Geçerli",
                "detail": "Cloudflare, Inc. · bitiş 28.10.2027 (373 gün)",
                "findings": [],
                "data": {
                    "found": true,
                    "days": 373,
                    "locked": true,
                    "reason": null,
                    "name": "socifly.com",
                    "registrar": "Cloudflare, Inc.",
                    "status": [
                        "client transfer prohibited"
                    ],
                    "registered": "2015-10-28",
                    "expires": "2027-10-28",
                    "changed": "2026-09-28",
                    "nameservers": [
                        "lily.ns.cloudflare.com",
                        "rob.ns.cloudflare.com"
                    ],
                    "dnssec": false
                }
            },
            {
                "key": "spf",
                "label": "SPF",
                "status": "ok",
                "statusLabel": "Geçerli",
                "detail": "v=spf1 include:_spf.yandex.net include:spf.sendinblue.com ~all · 9/10 DNS araması",
                "findings": [],
                "data": {
                    "record": "v=spf1 include:_spf.yandex.net include:spf.sendinblue.com ~all",
                    "lookups": 9,
                    "all": "~all",
                    "chain": [
                        "_spf.yandex.net",
                        "_spf.yandex.ru",
                        "_spf-ipv6.yandex.ru",
                        "_spf-ipv4-yc.yandex.ru",
                        "_spf-ipv4-yc-a.yandex.ru",
                        "_spf-ipv4-yc-b.yandex.ru",
                        "_spf-ipv4-yc-d.yandex.ru",
                        "_spf-ipv4-x.yandex.ru",
                        "spf.sendinblue.com"
                    ]
                }
            },
            {
                "key": "dkim",
                "label": "DKIM",
                "status": "warn",
                "statusLabel": "Zayıf",
                "detail": "mail · 1024 bit RSA",
                "findings": [
                    {
                        "level": "warn",
                        "code": "dkim-1024",
                        "title": "DKIM anahtarı 1024 bit (mail)",
                        "text": "Hâlâ kabul ediliyor ama 2048 bit önerilir.",
                        "fix": null
                    }
                ],
                "data": {
                    "found": [
                        {
                            "selector": "mail",
                            "bits": 1024,
                            "type": "RSA",
                            "revoked": false
                        }
                    ]
                }
            },
            {
                "key": "dmarc",
                "label": "DMARC",
                "status": "warn",
                "statusLabel": "Zayıf",
                "detail": "p=none · rua tanımlı · %100",
                "findings": [
                    {
                        "level": "warn",
                        "code": "dmarc-none",
                        "title": "DMARC politikası sadece izliyor (p=none)",
                        "text": "Sahte e-postalar engellenmiyor. Raporları inceledikten sonra quarantine'e geçin.",
                        "fix": "v=DMARC1; p=quarantine; rua=mailto:info@socifly.com"
                    }
                ],
                "data": {
                    "record": "v=DMARC1; p=none; rua=mailto:info@socifly.com",
                    "tags": {
                        "v": "DMARC1",
                        "p": "none",
                        "rua": "mailto:info@socifly.com"
                    }
                }
            },
            {
                "key": "mta-sts",
                "label": "MTA-STS",
                "status": "neutral",
                "statusLabel": "Yok",
                "detail": "Kayıt yok (isteğe bağlı; SMTP şifrelemesini zorunlu kılar)",
                "findings": [
                    {
                        "level": "info",
                        "code": "mtasts-missing",
                        "title": "MTA-STS yok",
                        "text": "Gelen e-postalarda TLS zorunlu değil; ortadaki adam saldırısına açık. İsteğe bağlı ama önerilir.",
                        "fix": "_mta-sts.socifly.com TXT \"v=STSv1; id=202610191248\""
                    }
                ],
                "data": []
            },
            {
                "key": "bimi",
                "label": "BIMI",
                "status": "neutral",
                "statusLabel": "Yok",
                "detail": "Kayıt yok (logo gösterimi için DMARC enforce gerekli)",
                "findings": [],
                "data": []
            },
            {
                "key": "dnssec",
                "label": "DNSSEC",
                "status": "warn",
                "statusLabel": "İmzasız",
                "detail": "DS kaydı yok · bölge imzalanmamış",
                "findings": [
                    {
                        "level": "warn",
                        "code": "dnssec-unsigned",
                        "title": "DNSSEC etkin değil",
                        "text": "Kayıtlar imzalı değil; sahte DNS yanıtları (önbellek zehirleme) tespit edilemez. DNS sağlayıcınızda DNSSEC'i açıp DS kaydını alan adı kayıt firmanıza girin.",
                        "fix": null
                    }
                ],
                "data": {
                    "steps": [
                        {
                            "zone": ". (kök)",
                            "keys": "KSK 20326, 38696 · imzalar geçerli",
                            "status": "ok",
                            "label": "Güven kökü"
                        },
                        {
                            "zone": "com",
                            "keys": "DS → DNSKEY 19718 · imzalar geçerli",
                            "status": "ok",
                            "label": "Doğrulandı"
                        },
                        {
                            "zone": "socifly.com",
                            "keys": "DS yok",
                            "status": "unsigned",
                            "label": "İmzasız"
                        }
                    ],
                    "algorithm": null,
                    "expires": null,
                    "secure": false
                }
            },
            {
                "key": "ns",
                "label": "Nameserver",
                "status": "warn",
                "statusLabel": "Tek ağ",
                "detail": "2 sunucu · 1 farklı ağ (ASN) · seri numaraları eşleşiyor",
                "findings": [
                    {
                        "level": "warn",
                        "code": "ns-single-asn",
                        "title": "Tüm nameserver'lar aynı ağda (AS13335)",
                        "text": "O ağda kesinti olursa alan adı erişilemez. Farklı bir sağlayıcıda ikincil nameserver ekleyin.",
                        "fix": null
                    }
                ],
                "data": {
                    "servers": [
                        {
                            "host": "lily.ns.cloudflare.com",
                            "ip": "172.64.32.130",
                            "asn": 13335,
                            "holder": "CLOUDFLARENET - Cloudflare, Inc.",
                            "loc": null,
                            "ms": 2.8,
                            "serial": 2415905144,
                            "status": "ok",
                            "statusLabel": "Yetkili",
                            "w": 100
                        },
                        {
                            "host": "rob.ns.cloudflare.com",
                            "ip": "108.162.193.140",
                            "asn": 13335,
                            "holder": "CLOUDFLARENET - Cloudflare, Inc.",
                            "loc": null,
                            "ms": 2,
                            "serial": 2415905144,
                            "status": "ok",
                            "statusLabel": "Yetkili",
                            "w": 71
                        }
                    ],
                    "asns": [
                        13335
                    ]
                }
            },
            {
                "key": "mx",
                "label": "MX",
                "status": "warn",
                "statusLabel": "Uyarı",
                "detail": "1 kayıt · mx.yandex.net",
                "findings": [
                    {
                        "level": "warn",
                        "code": "mx-ptr-mismatch",
                        "title": "PTR kaydı MX adıyla eşleşmiyor (mx.yandex.net)",
                        "text": "77.88.21.249 → mxfront.stable.qloud-b.yandex.net. Tam eşleşme (FCrDNS) olmayınca bazı alıcılar puanı düşürür.",
                        "fix": null
                    },
                    {
                        "level": "warn",
                        "code": "mx-ptr-mismatch",
                        "title": "PTR kaydı MX adıyla eşleşmiyor (mx.yandex.net)",
                        "text": "2a02:6b8::311 → mxfront.stable.qloud-b.yandex.net. Tam eşleşme (FCrDNS) olmayınca bazı alıcılar puanı düşürür.",
                        "fix": null
                    }
                ],
                "data": {
                    "hosts": [
                        {
                            "host": "mx.yandex.net",
                            "pref": 10,
                            "ips": [
                                "77.88.21.249",
                                "2a02:6b8::311"
                            ],
                            "ptr": {
                                "77.88.21.249": [
                                    "mxfront.stable.qloud-b.yandex.net"
                                ],
                                "2a02:6b8::311": [
                                    "mxfront.stable.qloud-b.yandex.net"
                                ]
                            }
                        }
                    ]
                }
            },
            {
                "key": "caa",
                "label": "CAA",
                "status": "warn",
                "statusLabel": "Yok",
                "detail": "Her sertifika otoritesi bu alan adı için sertifika verebilir",
                "findings": [
                    {
                        "level": "warn",
                        "code": "caa-missing",
                        "title": "CAA kaydı yok",
                        "text": "Her sertifika otoritesi bu alan adı için SSL sertifikası verebilir. Kullandığınız CA'yı belirtin.",
                        "fix": "socifly.com CAA 0 issue \"letsencrypt.org\""
                    }
                ],
                "data": []
            },
            {
                "key": "soa",
                "label": "SOA",
                "status": "ok",
                "statusLabel": "Geçerli",
                "detail": "seri 2415905144 · refresh 10000 · retry 2400 · expire 604800 · minimum 1800",
                "findings": [],
                "data": {
                    "mname": "lily.ns.cloudflare.com",
                    "rname": "dns.cloudflare.com",
                    "serial": 2415905144,
                    "refresh": 10000,
                    "retry": 2400,
                    "expire": 604800,
                    "minimum": 1800
                }
            },
            {
                "key": "ssl",
                "label": "SSL/HTTP",
                "status": "ok",
                "statusLabel": "Geçerli",
                "detail": "Google Trust Services · 67 gün · TLSv1.3 · HTTP/3",
                "findings": [],
                "data": {
                    "ip": "104.21.80.194",
                    "issuer": "Google Trust Services",
                    "subject": "socifly.com",
                    "sans": 2,
                    "chain": 3,
                    "validTo": "25.12.2026",
                    "days": 67,
                    "verified": true,
                    "protocol": "TLSv1.3",
                    "cipher": "TLS_AES_256_GCM_SHA384",
                    "httpVersion": "HTTP/3",
                    "h3": "var",
                    "redirect": true,
                    "httpStatus": 301,
                    "httpsStatus": 200,
                    "server": "cloudflare",
                    "headers": [
                        {
                            "key": "strict-transport-security",
                            "label": "HSTS",
                            "present": true,
                            "value": "max-age=31536000; includeSubDomains; preload"
                        },
                        {
                            "key": "content-security-policy",
                            "label": "CSP",
                            "present": true,
                            "value": "default-src 'self' *.socifly.com *.google.com *.cloudflare.com *.tikokart.com *.tikocard.com data: blob:; script-src 'self' 'unsafe-inline' 'unsafe-eval' *.socifly.com *.google.com *.gstatic.com *.cloudflare.com *.cloudflareinsights.com code.jquery.com cdn.datatables.net cdn.jsdelivr.net *.googletagmanager.com *.doubleclick.net *.googleadservices.com *.gstatic.com data: blob:; worker-src 'self' blob: https://www.socifly.com *.socifly.com *.google.com *.gstatic.com *.cloudflare.com code.jquery.com cdn.datatables.net cdn.jsdelivr.net; style-src 'self' 'unsafe-inline' *.socifly.com *.googletagmanager.com https://fonts.googleapis.com https://cdn.jsdelivr.net; img-src 'self' *.socifly.com *.google.com *.cloudflare.com *.googleusercontent.com *.googleadservices.com *.wikimedia.org *.google.com.tr *.google.com *.doubleclick.net *.gstatic.com *.googletagmanager.com *.cdninstagram.com *.instagram.com *.cdnfacebook.com data: blob:; font-src 'self' data: *.socifly.com *.google.com *.googleapis.com fonts.gstatic.com; connect-src 'self' *.socifly.com wss://socket.socifly.com https://cloudflareinsights.com *.google.com https://google.com; upgrade-insecure-requests; block-all-mixed-content; frame-src *"
                        },
                        {
                            "key": "x-content-type-options",
                            "label": "X-Content-Type-Options",
                            "present": true,
                            "value": "nosniff"
                        },
                        {
                            "key": "x-frame-options",
                            "label": "X-Frame-Options",
                            "present": true,
                            "value": "SAMEORIGIN"
                        },
                        {
                            "key": "referrer-policy",
                            "label": "Referrer-Policy",
                            "present": true,
                            "value": "same-origin"
                        },
                        {
                            "key": "permissions-policy",
                            "label": "Permissions-Policy",
                            "present": false,
                            "value": null
                        }
                    ],
                    "tlsOk": true
                }
            }
        ],
        "findings": [
            {
                "level": "warn",
                "code": "dkim-1024",
                "title": "DKIM anahtarı 1024 bit (mail)",
                "text": "Hâlâ kabul ediliyor ama 2048 bit önerilir.",
                "fix": null
            },
            {
                "level": "warn",
                "code": "dmarc-none",
                "title": "DMARC politikası sadece izliyor (p=none)",
                "text": "Sahte e-postalar engellenmiyor. Raporları inceledikten sonra quarantine'e geçin.",
                "fix": "v=DMARC1; p=quarantine; rua=mailto:info@socifly.com"
            },
            {
                "level": "warn",
                "code": "dnssec-unsigned",
                "title": "DNSSEC etkin değil",
                "text": "Kayıtlar imzalı değil; sahte DNS yanıtları (önbellek zehirleme) tespit edilemez. DNS sağlayıcınızda DNSSEC'i açıp DS kaydını alan adı kayıt firmanıza girin.",
                "fix": null
            },
            {
                "level": "warn",
                "code": "ns-single-asn",
                "title": "Tüm nameserver'lar aynı ağda (AS13335)",
                "text": "O ağda kesinti olursa alan adı erişilemez. Farklı bir sağlayıcıda ikincil nameserver ekleyin.",
                "fix": null
            },
            {
                "level": "warn",
                "code": "mx-ptr-mismatch",
                "title": "PTR kaydı MX adıyla eşleşmiyor (mx.yandex.net)",
                "text": "77.88.21.249 → mxfront.stable.qloud-b.yandex.net. Tam eşleşme (FCrDNS) olmayınca bazı alıcılar puanı düşürür.",
                "fix": null
            },
            {
                "level": "warn",
                "code": "mx-ptr-mismatch",
                "title": "PTR kaydı MX adıyla eşleşmiyor (mx.yandex.net)",
                "text": "2a02:6b8::311 → mxfront.stable.qloud-b.yandex.net. Tam eşleşme (FCrDNS) olmayınca bazı alıcılar puanı düşürür.",
                "fix": null
            },
            {
                "level": "warn",
                "code": "caa-missing",
                "title": "CAA kaydı yok",
                "text": "Her sertifika otoritesi bu alan adı için SSL sertifikası verebilir. Kullandığınız CA'yı belirtin.",
                "fix": "socifly.com CAA 0 issue \"letsencrypt.org\""
            },
            {
                "level": "info",
                "code": "mtasts-missing",
                "title": "MTA-STS yok",
                "text": "Gelen e-postalarda TLS zorunlu değil; ortadaki adam saldırısına açık. İsteğe bağlı ama önerilir.",
                "fix": "_mta-sts.socifly.com TXT \"v=STSv1; id=202610191248\""
            }
        ],
        "counts": {
            "ok": 6,
            "warn": 6,
            "err": 0,
            "fail": 0
        },
        "score": {
            "score": 64,
            "grade": "C",
            "word": "Orta",
            "tone": "warn",
            "unchecked": []
        },
        "providers": {
            "web": "Cloudflare, Inc.",
            "mail": "yandex.net",
            "dns": "cloudflare.com"
        },
        "totalMs": 1809,
        "at": "19.10.2026 12:48",
        "ms": 1
    }
}
