Kategorie: IT

Securitytheater

Bei IPv6 mit pri­va­cy exten­si­ons geht es rich­tig los 🙂
Natür­lich kommt jedes Log­in von einer neu­en Adres­se, das ist ja der Sinn der pri­va­cy extensions.


Wer weiß, wie man das bei Vault­war­den abstel­len kann, schreibt es bit­te unten👇 in die Kommentare 😉

Ich protestiere!

Eine Next­cloud-Instal­la­ti­on möch­te upge­da­ted wer­den, es geht in die Hose beim Sche­ma-Upgrade des mys­ql. Das ist auch des­we­gen ärger­lich, weil ich nicht der mys­ql-Admin bin, das ist ein Kollege.
Jeden­falls muß ein Back­up zurück­ge­spielt wer­den, alles kein Beinbruch.
Es funk­tio­niert auch, aller­dings beschwert sich Next­cloud, daß der letz­te Cron­job, der eigent­lich alle 5 Minu­ten lau­fen soll­te, zuletzt vor Stun­den gelau­fen ist.

Und da wirds unan­ge­nehm: crontab -l lis­tet kei­nen ent­spre­chen­den Job. Ach ja, Poet­te­ring gave systemd-timer to you… Und da fin­det sich dann auch der gesuch­te Job.

War­um zum Gei­er hat man nun zwei unab­hän­gi­ge Sche­du­ler? Ich will einen ein­zi­gen haben, meh­re­re sind doch Murks! Oder mei­net­we­gen einen Kom­pa­ti­bi­li­täts­lay­er, mit /etc/init.d/ hat mans ja auch geschafft.

So, ich suche mir jetzt einen Tre­cker und protestiere!

Die Sittenpolizisten bei Arte

brau­chen eine Weiterbildung:
Ich möch­te mir einen Film anse­hen, die­sen: https://www.arte.tv/de/videos/048182–000‑A/der-diskrete-charme-der-bourgeoisie/
Aber nicht vor 22 Uhr, wenn die Jugend, die ansons­ten tags­über auf Arte nach bösen Buñuel-Fil­men sucht, noch nicht schläft — das darf nicht sein:

Nun ja, grei­fen wir in die böse-Opas-haben-Hackertools-Kiste:

❯ yt-dlp https://www.arte.tv/de/videos/048182-000-A/der-diskrete-charme-der-bourgeoisie/
[ArteTV] Extracting URL: https://www.arte.tv/de/videos/048182-000-A/der-diskrete-charme-der-bourgeoisie/
[ArteTV] 048182-000-A: Downloading JSON metadata
[ArteTV] 048182-000-A: Downloading m3u8 information
[info] 048182-000-A: Downloading 1 format(s): VA-STA-2169+VA-STA-audio_0-Französisch
[hlsnative] Downloading m3u8 manifest
[hlsnative] Total fragments: 978
[download] Destination: Der diskrete Charme der Bourgeoisie [048182-000-A].fVA-STA-2169.mp4
[download] 100% of 1.39GiB in 00:02:16 at 10.48MiB/s
[hlsnative] Downloading m3u8 manifest
[hlsnative] Total fragments: 979
[download] Destination: Der diskrete Charme der Bourgeoisie [048182-000-A].fVA-STA-audio_0-Französisch.mp4
[download] 100% of 90.15MiB in 00:00:54 at 1.65MiB/s
[Merger] Merging formats into "Der diskrete Charme der Bourgeoisie [048182-000-A].mp4"
Deleting original file Der diskrete Charme der Bourgeoisie [048182-000-A].fVA-STA-audio_0-Französisch.mp4 (pass -k to keep)
Deleting original file Der diskrete Charme der Bourgeoisie [048182-000-A].fVA-STA-2169.mp4 (pass -k to keep)

Dem auf­merk­sa­men Leser wird auf­fal­len, daß die fran­zö­si­sche Ton­spur genom­men wird, wer die deut­sche haben will:

yt-dlp -f VA-STA-2169+VA-STA-audio_0-Deutsch https://www.arte.tv/de/videos/048182-000-A/der-diskrete-charme-der-bourgeoisie/

Aber das habt ihr nicht gele­sen, nicht daß die Jugend noch zum Kon­sum sub­ver­si­ver Kunst ange­regt wird!

Streaming für klassische Musik

Das ist noch stark verbesserungswürdig.

  • Die Ver­schlag­wor­tung (Inter­pret, Album, Titel) kommt wohl vom (nie stan­dar­di­sier­ten) ID3, taugt für klas­si­sche Musik aber nicht: “Spie­le Beet­ho­vens neun­te unter Clau­dio Abba­do mit den Ber­li­ner Phil­har­mo­ni­kern aus dem Jahr 2000”. Viel Glück bei der Suche, auch wenn die meis­ten Strea­ming­diens­te das haben werden.
  • Über­haupt: Inter­pret. Wer ist denn in die­sem Bei­spiel Inter­pret? Beet­ho­ven ja mal nicht, und doch fin­det man Beet­ho­ven unter Interpreten.
  • Namen: Wie heißt er denn nun? Tschai­kow­ski? Tschai­kow­sky? Tchai­kow­sky? Tchai­kovs­ky? Чайко́вский jeden­falls nicht, obwohl das kor­rekt wäre. Kor­rekt wäre auch im latei­ni­schen Alpha­bet Čaj­kovs­kij, das gibts zwar, aber eher selten.

Das wäre doch was für eine KI!

Eine Merkbefreiung für die Barmer

Vor­hin sehe ich auf dem Han­dy in mei­ne Mail­box: Es gibt eine Mail von der Barmer.:

im Post­fach liegt noch eine unge­le­se­ne Nach­richt für Sie bereit.

Log­gen Sie sich auf www.barmer.de oder in der BAR­MER-App ein, um die­se zu lesen.

Ja dann schickt mir die Mail doch einfach!
Na gut, ich möch­te mich ein­log­gen (immer­noch auf dem Han­dy). Login/Paßwort sind glück­li­cher­wei­se im Bit­war­den hin­ter­legt, und modern wie die Bar­mer zu sein hal­lu­zi­niert, schi­cken sie mir dann eine SMS-TAN 🤦‍♂️.
Nein, lesen kann ich die “Mail” natür­lich noch nicht wegen Coo­kie­ter­ror­ban­ner. Nein, ich will eure Kek­se nicht haben, auch nicht die, die angeb­lich uner­läß­lich sind, aber die kann ich natür­lich nicht ablehnen.
Da ist ein Fra­ge­bo­gen als PDF drin. Na mal reinsehen.

Aber nicht doch!

Popups! Die 2000-er sind zurück! Ich bin mir sicher, daß ein Groß­teil der Nut­zer gar nicht weiß, was im Brow­ser ein Popup ist.
Hilft ja nichts, also am Rech­ner die gan­ze Pro­ze­dur mit Ein­log­gen und SMS-TAN und Cookieterrorbanner.
Das sind übri­gens die funk­tio­nal not­wen­di­gen Cookies:

Ja schon klar.
Jeden­falls kann ich jetzt das PDF laden. Und was steht drin?

[…]
Ant­wor­ten Sie uns ein­fach und schnell online! Rufen Sie dazu unse­ren Online-Ser­vice auf. Die­sen errei­chen Sie über den Link in Ihrer per­sön­li­chen Postfachnachricht.
[…]

In die­sem PDF, das in der “Mail” steckt, steht also: Bit­te den Link in der “Mail” kli­cken. Ganz gro­ßes Tennis!
Ich kom­me also zu einem mehr­sei­ti­gen For­mu­lar, wel­ches ich aus­fül­len soll.
Natür­lich unter­schei­den sich die Sei­ten, bis auf:

Die haben doch nicht alle Lat­ten am Zaun 🙁

Lie­be Bar­mer, falls ihr mit­lest: hier ent­lang ☞ Eure Merk­be­frei­ung, bit­te sel­ber ausfüllen.

Smart TV

Heu­te kam ein neu­es Smart TV, das alte hat nach ca. 13 Jah­ren den Geist auf­ge­ge­ben (genau­er: ver­ständ­li­chen Ton auf­ge­ge­ben) Dyon heißt die Mar­ke, hat­te ich noch nie gehört, angeb­lich sogar ein deut­scher Her­stel­ler (https://www.dyon.eu/) — ich glau­be das nicht, ver­mut­lich kom­men die Gerä­te doch direkt aus China.

Da wir kein Anten­nen- oder Sat-TV haben, ging die Inbe­trieb­nah­me schnell von­stat­ten, auch Netz war sofort da:

Die 192.168.1.88 ist ein piho­le, der Fern­se­her soll ja auch was gutes bekommen.
Alles funk­tio­niert also, die diver­sen Strea­ming-Diens­te sind ein­ge­rich­tet und funktionieren.

Abschlie­ßend wer­fe ich noch einen Blick in die Logs des piho­le um zu sehen, zu wel­chen Heim­te­le­fo­nier-Sei­ten der Fern­se­her pet­zen möch­te. Stellt sich raus: Der Fern­se­her benutzt den piho­le gar nicht! (und auch nicht die 192.168.1.41)
Ein Ver­dacht kommt auf. Ich log­ge mich also auf dem Rou­ter ein und mache:

root@sokoll-router:/config# tcpdump -i switch0 -n host 192.168.1.92 and port 53
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on switch0, link-type EN10MB (Ethernet), capture size 262144 bytes
21:17:09.293692 IP 192.168.1.92.49962 > 8.8.8.8.53: 45092+ AAAA? logs.netflix.com. (34)
21:17:09.293699 IP 192.168.1.92.49962 > 8.8.8.8.53: 17557+ AAAA? nrdp.prod.cloud.netflix.com. (45)
21:17:09.293704 IP 192.168.1.92.49962 > 8.8.8.8.53: 15435+ A? nrdp51-appboot.netflix.com. (44)
21:17:09.293708 IP 192.168.1.92.49962 > 8.8.8.8.53: 49981+ AAAA? nrdp51-appboot.netflix.com. (44)
21:17:09.293715 IP 192.168.1.92.49962 > 8.8.8.8.53: 52581+ A? nrdp.nccp.netflix.com. (39)
21:17:09.293719 IP 192.168.1.92.49962 > 8.8.8.8.53: 42306+ AAAA? nrdp.nccp.netflix.com. (39)
21:17:09.293724 IP 192.168.1.92.49962 > 8.8.8.8.53: 27213+ A? api-global.netflix.com. (40)
21:17:09.321424 IP 192.168.1.92.49962 > 8.8.8.8.53: 60092+ A? logs.netflix.com. (34)
21:17:09.344818 IP 8.8.8.8.53 > 192.168.1.92.49962: 45092 6/0/0 CNAME logs.dradis.netflix.com., CNAME logs.eu-west-1.internal.dradis.netflix.com., CNAME apiproxy-logging-7d0bf81651765786.elb.eu-west-1.amazonaws.com., AAAA 2a05:d018:76c:b684::5a89:1099, AAAA 2a05:d018:76c:b680::5a89:1099, AAAA 2a05:d018:76c:b682::5a89:1099 (254)
21:17:09.346588 IP 8.8.8.8.53 > 192.168.1.92.49962: 17557 6/0/0 CNAME nrdp.prod.dradis.netflix.com., CNAME nrdp.prod.eu-west-1.internal.dradis.netflix.com., CNAME apiproxy-nrdp-prod-nlb-1-bc4243efc68f31ae.elb.eu-west-1.amazonaws.com., AAAA 2a05:d018:76c:b685:9ae6:e07a:670d:52e4, AAAA 2a05:d018:76c:b683:194f:a5df:2ad1:ab02, AAAA 2a05:d018:76c:b684:b7f5:7e97:3e99:751e (283)
21:17:09.346728 IP 8.8.8.8.53 > 192.168.1.92.49962: 52581 8/0/0 CNAME nrdp.nccp.dradis.netflix.com., CNAME nrdp.nccp.eu-west-1.origin.prodaa.netflix.com., A 52.19.104.71, A 52.49.155.216, A 54.76.160.164, A 52.210.130.122, A 52.210.124.147, A 52.18.41.61 (214)
21:17:09.346868 IP 8.8.8.8.53 > 192.168.1.92.49962: 49981 10/0/0 CNAME appboot.dradis.netflix.com., CNAME appboot.eu-west-1.origin.prodaa.netflix.com., AAAA 2a01:578:3::3410:ea4e, AAAA 2a01:578:3::34d3:322, AAAA 2a01:578:3::34d4:c576, AAAA 2a01:578:3::34d3:3154, AAAA 2a01:578:3::3430:8bf6, AAAA 2a01:578:3::369a:f1ed, AAAA 2a01:578:3::22f0:a04c, AAAA 2a01:578:3::36f6:b554 (343)

Au weia! Es wird unge­be­ten Goo­gles DNS verwendet!
Fra­gen kom­men auf: Das Teil erkennt die per DHCP zuge­wie­se­nen Name­ser­ver — und ver­wen­det sie nicht. War­um? Das­Teil hat kein v6 und fragt doch nach AAAA. Warum?
Nun, ich zise­lie­re mir eine Firewall-Regel:

ubnt@sokoll-router:~$ show configuration commands
[…]
set firewall group address-group google-dns address 8.8.4.4
set firewall group address-group google-dns address 8.8.8.8
[…]
set firewall name LAN_OUT rule 20 action reject
set firewall name LAN_OUT rule 20 description 'Dem Fernseher Google DNS verbieten'
set firewall name LAN_OUT rule 20 destination group address-group google-dns
set firewall name LAN_OUT rule 20 destination port 53
set firewall name LAN_OUT rule 20 log disable
set firewall name LAN_OUT rule 20 protocol udp
set firewall name LAN_OUT rule 20 source address 192.168.1.92
set firewall name LAN_OUT rule 20 source mac-address '18:84:c1:bf:66:f1'
[…]

Und das wirkt, tataa!

root@sokoll-router:/config# tcpdump -i switch0 -n host 192.168.1.92 and port 53
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on switch0, link-type EN10MB (Ethernet), capture size 262144 bytes
21:32:35.659906 IP 192.168.1.92.34723 > 8.8.8.8.53: 23537+ A? logs.netflix.com. (34)
21:32:35.659911 IP 192.168.1.92.34723 > 8.8.8.8.53: 44326+ AAAA? nrdp.prod.cloud.netflix.com. (45)
21:32:35.659916 IP 192.168.1.92.34723 > 8.8.8.8.53: 22112+ A? nrdp51-appboot.netflix.com. (44)
21:32:35.659920 IP 192.168.1.92.34723 > 8.8.8.8.53: 57120+ AAAA? nrdp51-appboot.netflix.com. (44)
21:32:35.659924 IP 192.168.1.92.34723 > 8.8.8.8.53: 44242+ A? nrdp.nccp.netflix.com. (39)
21:32:35.659928 IP 192.168.1.92.34723 > 8.8.8.8.53: 19783+ AAAA? nrdp.nccp.netflix.com. (39)
21:32:35.659932 IP 192.168.1.92.34723 > 8.8.8.8.53: 25321+ A? api-global.netflix.com. (40)
21:32:35.662950 IP 192.168.1.92.43839 > 8.8.8.8.53: 22191+ AAAA? api-global.netflix.com. (40)
21:32:35.662958 IP 192.168.1.92.43839 > 8.8.8.8.53: 64306+ A? secure.netflix.com. (36)
21:32:35.663031 IP 192.168.1.92.43839 > 8.8.8.8.53: 32983+ AAAA? secure.netflix.com. (36)
21:32:35.663041 IP 192.168.1.92.43839 > 8.8.8.8.53: 58766+ A? uiboot.netflix.com. (36)
21:32:35.663049 IP 192.168.1.92.43839 > 8.8.8.8.53: 59032+ AAAA? uiboot.netflix.com. (36)
21:32:35.663094 IP 192.168.1.92.43839 > 8.8.8.8.53: 47968+ A? customerevents.netflix.com. (44)
21:32:35.663132 IP 192.168.1.92.43839 > 8.8.8.8.53: 27882+ A? ichnaea.netflix.com. (37)
21:32:35.663181 IP 192.168.1.92.43839 > 8.8.8.8.53: 18226+ A? cdn-0.nflximg.com. (35)
21:32:35.663231 IP 192.168.1.92.43839 > 8.8.8.8.53: 20002+ A? nrdp.prod.ftl.netflix.com. (43)
21:32:35.663263 IP 192.168.1.92.43839 > 8.8.8.8.53: 42457+ AAAA? nrdp.prod.ftl.netflix.com. (43)
21:32:35.883642 IP 192.168.1.92.43839 > 8.8.8.8.53: 13421+ A? nrdp.prod.cloud.netflix.com. (45)
21:32:36.634192 IP 192.168.1.92.43839 > 8.8.8.8.53: 13421+ A? nrdp.prod.cloud.netflix.com. (45)
21:32:36.787647 IP 192.168.1.92.43839 > 8.8.8.8.53: 44242+ A? nrdp.nccp.netflix.com. (39)

Er befragt wei­ter­hin Goog­le, bekommt aber kei­ne Ant­wor­ten mehr 🤓
Und gleich­zei­tig füllt sich das Log vom piho­le. Und natür­lich funk­tio­niert das Smart am TV immer noch.

Hm, mir fällt gera­de auf, daß ich

set firewall name LAN_OUT rule 20 protocol udp

auf

set firewall name LAN_OUT rule 20 protocol all

ändern soll­te, nicht daß das Teil auf TCP umschwenkt irgendwann.

Was machen 99% der Smart­TV-Nut­zer? Die haben weder das Wis­sen noch die Tech­nik, dem Spio­nie­ren wenigs­tens ein wenig ent­ge­gen­zu­tre­ten. Klar könn­te man das Ether­net zie­hen und einen Fire­stick oder so direkt an HDMI anflan­schen. Aber ob der weni­ger spio­nie­ren würde?
Wobei ich sagen möch­te: Dem TV-Her­stel­ler wer­fe ich kei­ne Bös­ar­tig­keit vor, er lie­fert sei­ne Kun­den man­gels Sorg­falt ein­fach den Daten­kra­ken aus, was im End­ef­fekt aber egal ist. Das TV soll ein­fach das anneh­men, was man ihm sagt, und gut wäre es.

 

Ignoriert Chrome meine DNS-Einstellungen?

Goog­le hyper­ven­ti­liert, wenn ich mit v6 von tunnelbroker.net kom­me. Also habe ich mei­nem Name­ser­ver gesagt, er möge für google.com doch bit­te kei­ne AAAA-RRs zurückgeben.

Ich habe v6:

❯ ping6 -c1 heise.de
PING6(56=40+8+8 bytes) 2001:470:6d:c40:bced:266f:8a1e:ef35 --> 2a02:2e0:3fe:1001:302::
16 bytes from 2a02:2e0:3fe:1001:302::, icmp_seq=0 hlim=54 time=63.475 ms

Klappt aber (wie gewollt) nicht für Goog­le, weil der Name­ser­ver nur A zurückgibt:

❯ ping6 -c1 google.com ; host -t aaaa google.com
ping6: getaddrinfo -- nodename nor servname provided, or not known
google.com has no AAAA record

Aber wenn Chro­me zu Goog­le geht — tadaa!

Die­ses Netz­werk ist auf­grund unbe­ant­wor­te­ter Miss­brauchs­be­schwer­den über bös­wil­li­ges Ver­hal­ten gesperrt. Auf die­ser Sei­te wird über­prüft, ob es sich wirk­lich um einen Men­schen han­delt, der die Anfra­gen sen­det, und nicht um einen Robo­ter, der aus die­sem Netz­werk stammt.

IP-Adres­se: 2001:470:6d:c40:bced:266f:8a1e:ef35

Wie kann das sein?
Ich habe Chro­me gesagt, er soll mei­nen Ser­ver verwenden:

 

Und ja, mein Name­ser­ver macht DNSSEC:

❯ dig +dnssec sokoll.com | grep flags
;; flags: qr rd ra ad; QUERY: 1, ANSWER: 3, AUTHORITY: 5, ADDITIONAL: 6

Was könn­te hier falsch sein?
Sind SIE hin­ter mir her?

Der Name der Rose, äh, des Bots

Ist eben nur ein Name und nicht not­wen­dig der Bot.
fail2ban ver­mu­tet eine DOS-Atta­cke auf www.example.com und blockt:

root@www:~# fail2ban-client status apache-dos-1
Status for the jail: apache-dos-1
|- Filter
| |- Currently failed: 53
| |- Total failed: 1894165
| `- File list: /var/log/apache2/www.example.com-access.log
|- Currently banned: 1
|- Total banned: 4
`- Banned IP list: 45.137.22.238

Beginn:

45.137.22.238 - - [02/Nov/2023:20:14:00 +0100] "GET / HTTP/1.1" 302 5289 "-" "Googlebot/2.1 (+http://www.google.com/bot.html)"

Ende:

45.137.22.238 - - [02/Nov/2023:20:15:49 +0100] "GET /pfad/zu/ressource HTTP/1.1" 200 22386 "-" "Googlebot/2.1 (+http://www.google.com/bot.html)"

Dazwi­schen 1235 Requests — nicht schlecht, Herr Specht! Ist Goog­le völ­lig durch­ge­knallt? Aber Moment:

❯ host 45.137.22.238
238.22.137.45.in-addr.arpa domain name pointer hosted-by.rootlayer.net.

Das ist doch gar nicht Google?
Nein, ist es nicht:

❯ whois 45.137.22.238
[…]
inetnum: 45.137.20.0 - 45.137.23.255
netname: BD-ROOTLAYER-20190805
[…]
organisation: ORG-RWSL1-RIPE
org-name: RootLayer Web Services Ltd.
country: BD
org-type: LIR
address: 134/7 B, Furfura Sharif Road, Darus Salam, Mirpur, Dhaka
address: 1216
address: Dhaka
address: BANGLADESH

Wenn das Goog­le ist, dann bin ich Jesus.

Trau schau wem!