System: myDATA
Badany host: mydatapi.aade.gr
1. Cel audytu
Celem audytu jest ustalenie:
- gdzie fizycznie i logicznie znajduje się warstwa edge greckiego systemu myDATA,
- czy działa tam zewnętrzny WAF,
- czy na tej warstwie następuje terminacja TLS,
- oraz czy architektura Grecji jest analogiczna do Polski, czy jednak istotnie inna.
2. DNS — adresacja i delegacja
Komenda
$hostName = "mydatapi.aade.gr"Resolve-DnsName $hostName -Type A
Resolve-DnsName $hostName -Type AAAA
Resolve-DnsName $hostName -Type CNAMEResolve-DnsName "aade.gr" -Type NS
Resolve-DnsName "aade.gr" -Type SOA
Wynik
mydatapi.aade.gr→ A = 20.76.97.27- brak AAAA
- brak CNAME
- NS dla
aade.gr:ns1.otenet.grns2.otenet.gr
- SOA:
hostmaster.otenet.gr
Interpretacja
Brak CNAME oznacza, że host nie jest wystawiony przez klasyczny model typu:
azurefd.nettrafficmanager.netcloudflareakamaiimperva
Nie znaczy to jeszcze, że nie ma warstwy pośredniej. Znaczy tylko, że nie jest ona ujawniona przez DNS. Adres 20.76.97.27 od razu sugeruje infrastrukturę Microsoft Azure, ale to wymaga dalszego potwierdzenia.
3. Traceroute — rzeczywista trasa ruchu
Komenda
tracert mydatapi.aade.gr
Wynik
Kluczowe przeskoki:
ae76-0.ier02.jkt30.ntwk.msn.net
ae28-0.lax-96cbe-1a.ntwk.msn.net
104.44.48.181
104.44.52.184
20.76.97.27
Interpretacja
To jest bardzo ważny wynik. Hosty ntwk.msn.net oraz adresy 104.44.x.x należą do globalnego backbone Microsoftu. To oznacza, że ruch do greckiego systemu fiskalnego po wejściu do sieci operatorskiej trafia do globalnej sieci Microsoftu i dalej jest routowany wewnątrz infrastruktury Azure.
Czyli edge nie jest:
- grecki,
- państwowy,
- lokalny operatorsko,
tylko globalny i microsoftowy.
4. Reverse DNS i ASN
Komendy
Resolve-DnsName 20.76.97.27
nslookup 20.76.97.27
curl.exe https://ipinfo.io/20.76.97.27
Wynik
Reverse DNS
- brak rekordu PTR
ipinfo
{
"ip": "20.76.97.27",
"city": "Amsterdam",
"region": "North Holland",
"country": "NL",
"org": "AS8075 Microsoft Corporation"
}
Interpretacja
To jest już twardy dowód. Adres 20.76.97.27 należy do: AS8075 Microsoft Corporation i jest geolokalizowany do: Amsterdam, Holandia. To oznacza, że publiczny punkt wejścia do systemu myDATA znajduje się poza Grecją, w infrastrukturze Microsoft Azure w Holandii. To jest zasadnicza różnica względem większości badanych wcześniej państw.
5. Nagłówki HTTP — podstawowa odpowiedź hosta
Komenda
curl.exe -vkI https://mydatapi.aade.gr/ 2>&1
Wynik
HTTP/1.1 404 Resource Not FoundContent-Type: application/jsonRequest-Context: appId=cid-v1:1561b414-06fd-4c10-826b-a29096f57ca0- brak
Server - brak
Via - brak cookies
- po stronie klienta:
- żądanie renegocjacji TLS przez serwer
Interpretacja
1. 404 na root
To normalne dla API. Nie ma znaczenia diagnostycznego.
2. Request-Context
Nagłówek Request-Context jest charakterystyczny dla komponentów Microsoftowych, zwłaszcza:
- Azure Application Insights
- Azure App Service
- usług zintegrowanych z telemetrią Azure
To jest kolejny sygnał, że nie mamy do czynienia tylko z „IP z Azure”, ale z całym stosem platformowym Microsoftu.
3. Brak sygnatur WAF
Nie ma żadnych klasycznych śladów:
- Imperva
- Cloudflare
- Akamai
- F5
- Azure Front Door
To znaczy: jeśli warstwa pośrednia istnieje, to nie ujawnia się jako klasyczny WAF/CDN.
6. Pełna odpowiedź HTTP
Komenda
curl.exe -vk https://mydatapi.aade.gr/ 2>&1
Wynik
HTTP/1.1 404 Resource Not Found- body:
{ "statusCode": 404, "message": "Resource not found" }
- ponownie:
Request-Context- brak
Server - brak
Via - brak nagłówków
x-azure-ref,x-arr,x-azure-fdid,x-msedge-ref
Interpretacja
To ważne, bo pozwala zawęzić architekturę. Brak typowych nagłówków sugeruje, że to nie wygląda na:
- Azure Front Door,
- klasyczny Azure WAF,
- ARR z App Service wystawiony „wprost” z domyślnymi sygnaturami.
Bardziej prawdopodobny jest model backend lub gateway uruchomiony w Azure, ale bez widocznego, osobnego frontu WAF.
7. Proste nagłówki HEAD
Komenda
curl.exe -I https://mydatapi.aade.gr/
Wynik
HTTP/1.1 404 Resource Not FoundContent-Type: application/jsonContent-Length: 0Request-Context: appId=cid-v1:...
Interpretacja
Potwierdza to poprzedni krok. Nic nowego nie wskazuje na obecność klasycznego WAF.
8. OpenSSL — certyfikat i terminacja TLS
Komenda
openssl.exe" s_client `
-connect mydatapi.aade.gr:443 `
-servername mydatapi.aade.gr `
-showcerts
Wynik
Certyfikat serwera
CN=mydatapi.aade.grO=Independent Authority for Public RevenueL=AthensC=GRbusinessCategory=Government EntityjurisdictionC=GR
Issuer
Thawte EV RSA CA G2- DigiCert
TLS
Protocol: TLSv1.3Cipher: TLS_AES_256_GCM_SHA384No ALPN negotiatedVerify return code: 0 (ok)
Interpretacja
To jest kluczowy krok całego audytu.
1. TLS kończy się na infrastrukturze prezentującej certyfikat greckiego fiskusa
To znaczy pierwsza warstwa, która odpowiada na handshake TLS, przedstawia certyfikat wystawiony dla Independent Authority for Public Revenue. To nie jest certyfikat Microsoftu.
2. Ale certyfikat Microsoftu tu nie musi się pojawiać
Jeżeli Microsoft hostuje usługę klienta w swojej chmurze, to normalne jest, że serwer prezentuje certyfikat klienta, a nie dostawcy chmury. Czyli ten wynik nie obala tezy o Azure. On tylko mówi: TLS kończy się na usłudze hostowanej w Azure, ale wystawiającej certyfikat greckiego urzędu.
3. TLS 1.3
To już różni Grecję od wielu bardziej konserwatywnych systemów i wskazuje na nowocześniejszą warstwę edge niż np. Węgry czy Turcja.
9. Czy jest klasyczny WAF?
Dowody na obecność klasycznego WAF
Nie znaleziono:
- cookies typu Imperva / F5 / Cloudflare / Akamai
- nagłówków Azure Front Door
- nagłówków Azure WAF / App Gateway
- sygnatur bot/challenge
- osobnego frontu DNS typu
azurefd.net
Interpretacja
Na podstawie zebranych danych nie ma dowodu, że Grecja używa klasycznego, osobnego WAF analizującego payload API w sposób analogiczny do Impervy w Polsce. To nie znaczy, że nie ma żadnych mechanizmów ochrony. To znaczy tylko tyle, że nie udało się wykazać obecności wydzielonego WAF-a aplikacyjnego jako osobnego operatora warstwy edge.
10. Czy następuje terminacja TLS?
Tak — ale trzeba to rozumieć poprawnie. Każda usługa HTTPS gdzieś kończy TLS. W tym przypadku wyniki pokazują, że:
- edge znajduje się w infrastrukturze Microsoft Azure,
- certyfikat należy do greckiego fiskusa,
- handshake odbywa się na publicznym adresie Microsoftu.
Najuczciwszy technicznie wniosek brzmi więc: TLS kończy się w usłudze hostowanej w Azure, ale nie ma dowodu, że pomiędzy klientem a backendem działa osobny, wydzielony WAF analizujący payload.
11. Kluczowa różnica względem Polski
Polska
W Polsce z audytu wynika:
- obecność zewnętrznego WAF Imperva
- terminacja TLS na WAF
- odszyfrowanie HTTP
- widoczność metadanych JSON faktury przez operatora WAF
Czyli zewnętrzny operator bezpieczeństwa widzi payload aplikacyjny.
Grecja
W Grecji z audytu wynika:
- edge i hosting są w Azure
- publiczny punkt wejścia znajduje się w Amsterdamie
- ruch przechodzi przez globalny backbone Microsoftu
- ale nie wykazano obecności osobnego WAF analizującego payload API
Czyli Microsoft jest operatorem infrastruktury edge, ale nie udało się wykazać, że pełni dokładnie tę samą rolę, co Imperva w Polsce.
12. Interpretacja całości
Z całego audytu wynika następujący model architektury:
klient
↓
Internet
↓
globalny backbone Microsoft
↓
Azure public edge (Amsterdam)
↓
usługa myDATA hostowana w Azure
↓
grecki fiskus
To oznacza:
1. Grecja oddała warstwę infrastrukturalną zagranicznemu podmiotowi
To jest bezsporne. Publiczny punkt wejścia do systemu fiskalnego znajduje się w sieci Microsoftu poza Grecją.
2. Ale nie ma dowodu na „impervowy” model WAF
Nie widać osobnej bramki WAF, która:
- ujawnia się cookies,
- ma własne sygnatury,
- jawnie analizuje payload,
- działa jak pośrednik bezpieczeństwa przed backendem.
3. Model Grecji jest inny niż Polski
Najkrócej:
- Polska → outsourcing WAF
- Grecja → outsourcing hostingu edge / chmury
To nie jest to samo.
13. Wniosek końcowy
Najuczciwszy, technicznie poprawny wniosek brzmi: grecki system myDATA jest wystawiony przez publiczny edge Microsoft Azure zlokalizowany poza Grecją, a ruch do niego przechodzi przez globalną sieć Microsoftu. Nie wykazano jednak, by działał tam osobny, klasyczny WAF analizujący payload aplikacyjny w sposób analogiczny do Impervy w Polsce.
Wykonanie audytu: Grzegorz GPS Świderski. Sformatowanie tekstu: ChatGPT.
