|
|
|
|
|
|
|
|
Joa, das Windows kommt direkt mit der SSD raus. Aber vielleicht brauch ich das ja wiedermal.
|
|
|
|
|
|
|
Woah, wie dreist.
|
|
|
|
|
|
|
| You're one of 15,003,961 people pwned in the Epik data breach | |
Zefix hab ich mit "epik" zu tun?
| Epik: In September 2021, the domain registrar and web host Epik suffered a significant data breach, allegedly in retaliation for hosting alt-right websites. The breach exposed a huge volume of data not just of Epik customers, but also scraped WHOIS records belonging to individuals and organisations who were not Epik customers. The data included over 15 million unique email addresses (including anonymised versions for domain privacy), names, phone numbers, physical addresses, purchases and passwords stored in various formats.
Compromised data: Email addresses, Names, Phone numbers, Physical addresses, Purchases | |
Grüße gehen raus an DENIC, die jahrzehntelang einen Scheißdreck gegen Scraping unternommen haben bis ihnen die DSGVO Änderungen aufgezwungen hat.
|
|
|
|
|
|
|
|
|
|
|
Berühmte letzte Worte: libc ist ja abwärtskompatibel.
|
[Dieser Beitrag wurde 2 mal editiert; zum letzten Mal von csde_rats am 25.09.2021 17:09]
|
|
|
|
|
|
Wer pacman -Sy verwendet hat es ja nun auch nicht besser verdient!
|
|
|
|
|
|
|
Was das angeht bin ich nicht lernfähig
|
|
|
|
|
|
|
Mache das auch schon immer so. Allerdings habe ich meine Server auf Debian umgestellt.
|
|
|
|
|
|
|
| Zitat von B0rG*
Wer pacman -Sy verwendet hat es ja nun auch nicht besser verdient!
| | Was macht man denn stattdessen?
|
|
|
|
|
|
|
| Zitat von audax
| Zitat von B0rG*
Wer pacman -Sy verwendet hat es ja nun auch nicht besser verdient!
| | Was macht man denn stattdessen?
| |
pacman -Syu – damit eben nicht irgendeine Sache noch rumliegt, die z.B. für irgend 'ne alte Library-Version gebaut ist o.ä.; -Sy zieht nur die Repos; -Syu aktualisiert auch gleich alle Pakete.
|
|
|
|
|
|
|
Genau, pacman -Sy macht einen inkonsistenten Zustand des Systems, da die bereits installierten Pakete nicht aktualisiert werden, neue (oder explizit geupdatete) Pakete aber dazu eventuell nicht kompatibel sind. Wie im Beispiel oben mit libc und ssh.
Die Lösung ist entweder vom alten Stand zu installieren mit pacman -S , was geht solange dein Mirror die Pakete noch hat oder es kein Update gab. Oder vor der Installation das System zu updaten mit pacman -Syu .
|
|
|
|
|
|
|
| Zitat von audax
| Zitat von B0rG*
Wer pacman -Sy verwendet hat es ja nun auch nicht besser verdient!
| | Was macht man denn stattdessen?
| |
Damit legt man die Grundlage um versehentlich nachfolgend ein partielles Update einzuspielen. Archlinux hat eine lokale Paketdatenbank und die lokal installierten Paketen. Wenn man jetzt Pakete aus veschiedenen Ständen der Paketdatenbanken installiert, hat man ein inkonsistentes System.
Ein Update der Paketdatenbank und eine Update oder Installation von Paketen sind eigenständige Abläufe. Die installierten Pakete müssen jedoch konsistent zueinander sein, basierend auf dem Stand der lokalen Paketdatenbank. Bevor Änderungen ausgeführt werden, muss man alle Pakete auch auf den Stand der lokalen Paketdatenbank bringen.
Wenn Du nur wissen möchtest was sich in den Paketdatenbanken geändert hat, kannst du auch ein pacman -Sy machen und Dir den Zustand ansehen. Etwa mit pacman -Ss potdroid oder pacman -Qu (List von Paketen die ein Update bekommen würden). Bevor du etwas änderst, musst du vorher die Pakete auf Stand der lokalen Paketdatenbank bringen mit pacman -Su. Oder du holst Dir gleich eine neue Paketdatenbank und aktualisiert alle Pakete, mit pacman -Syu.
Mach immer pacman -Syu wie im Wikiartikel von pacman beschrieben, dann bist du sicher. Falls Dir die Updates nicht gefallen, kannst du immer noch mit 'n' abbrechen.
Mein Ablauf. Alles bis auf Schritt 1 ist technisch gesehen optional. Ich möchte alles sauber halten, also kommt 2 bis 4 dazu:
- pacman -Syu // Update lokaler Paketdatenbank und Update lokaler Pakete
- pacman -Qdt // Gibt es nicht mehr benötigte Abhängigkeiten die womöglich entfernt werden können?
- pacman -Qm // Pakete welche nicht oder nicht mehr in den offiziellen Paketdatenbanken sind
- pacdiff // Gibt es geänderte Konfiguratonsdateien? Gehört zu pacman-contrib.
Wenn Pakete bei pacman -Qdt aufgelistet werden, steht man vor der Wahl den Installationsgrund zu änderen auf explizit (behalten) oder die Pakete zu entfernen. Ich mache das mit pacman -Rns um auch deren Abhängigkeiten und eventuelle Konfigurationsdateien(.pacsave) zu entfernen.
Das Kommando pacman -Qm listet alle Pakete auf die nicht in den Repositories sind. Also manuell installierte Pakete aus AUR und Pakete die aus den Repositories entfernt worden sind. Hier kann man dann über Updates nachdenken oder ob man die Pakete auch deinstalliert.
Und pacdiff dient mir nur der Sicherheit, falls ich ich ein .pacnew beim Update nicht gesehen habe.
Anregung und Verbesserungsvorschläge sind willkommen.
|
[Dieser Beitrag wurde 4 mal editiert; zum letzten Mal von hoschi am 27.09.2021 17:05]
|
|
|
|
|
|
Das klingt alles sehr vernünftig. "-Sy" hab ich bisher auch nur aus Faulheit benutzt und es meistens bereut, so rückblickend betrachtet
|
|
|
|
|
|
|
wir hattens doch neulich von smartsteuer
grade nem kollegen empfohlen, der wollte sich anmelden.
nunja, er ist nicht so davon überzeugt, zeichen die nicht im passwort unterstztüt werden:
<>"'&
what year is it?
|
|
|
|
|
|
|
|
|
|
|
| Zitat von [KdM]MrDeath
wir hattens doch neulich von smartsteuer
grade nem kollegen empfohlen, der wollte sich anmelden.
nunja, er ist nicht so davon überzeugt, zeichen die nicht im passwort unterstztüt werden:
<>"'&
what year is it?
| |
Das ist… interessant.
Oh Gott, da hat jemand etwas übereifrig ne JS-Validierung ans Formular gepackt. Das ist natürlich völlig unnötiger Mist. Ich werde eventuell mal entfernen.
Workaround bis dahin: Das andere Registrierungsformular benutzen: Registrierung
¤dit: Nevermind, das wird auch da gecheckt. Was man machen kann: Normal registrieren und anschließend das Passwort ändern.
¤dit²: Es ist ein völlig unnützes Zeichenverbot. Völlig unnütz. Un-fucking-fassbar. Alte Code Bases sind immer wieder für einen Spaß gut.
¤dit³: Das ist alles fishy. Bisher sehe ich nur: Die Passwörter werden korrekt gehasht gespeichert, alles ist fluffig.
|
[Dieser Beitrag wurde 4 mal editiert; zum letzten Mal von audax am 30.09.2021 13:07]
|
|
|
|
|
|
| Zitat von csde_rats
Länge > Zeichenumfang
| |
Wenn zum Beispiel nur ein Zeichen erlaubt ist muss man es halt lang genug machen.
111111111...111111
|
|
|
|
|
|
|
Da muss dein Bruteforce erstmal bis 300 Einsen kommen!
|
|
|
|
|
|
|
| Zitat von audax
| Zitat von [KdM]MrDeath
wir hattens doch neulich von smartsteuer
grade nem kollegen empfohlen, der wollte sich anmelden.
nunja, er ist nicht so davon überzeugt, zeichen die nicht im passwort unterstztüt werden:
<>"'&
what year is it?
| |
Das ist… interessant.
Oh Gott, da hat jemand etwas übereifrig ne JS-Validierung ans Formular gepackt. Das ist natürlich völlig unnötiger Mist. Ich werde eventuell mal entfernen.
Workaround bis dahin: Das andere Registrierungsformular benutzen: Registrierung
¤dit: Nevermind, das wird auch da gecheckt. Was man machen kann: Normal registrieren und anschließend das Passwort ändern.
¤dit²: Es ist ein völlig unnützes Zeichenverbot. Völlig unnütz. Un-fucking-fassbar. Alte Code Bases sind immer wieder für einen Spaß gut.
¤dit³: Das ist alles fishy. Bisher sehe ich nur: Die Passwörter werden korrekt gehasht gespeichert, alles ist fluffig.
| |
viel spass damit :x
was ich dann immer gerne mach: selenium tests rein die mir in zukunft garantieren dass da nicht wieder jemand rumpfuscht, haben wir für passwörter sowieso ende-zu-ende und ich hätte das auch noch gern bei jedem systembuild ausgeführt aber das ist ne traurige eigene geschichte.
|
|
|
|
|
|
|
| Zitat von audax
¤dit²: Es ist ein völlig unnützes Zeichenverbot. Völlig unnütz. Un-fucking-fassbar. Alte Code Bases sind immer wieder für einen Spaß gut.
¤dit³: Das ist alles fishy. Bisher sehe ich nur: Die Passwörter werden korrekt gehasht gespeichert, alles ist fluffig.
| |
Keine Sorge, hier ist "Variable in einem Shellskript" eine API und Leute eskalieren rum, weil sich die Sorte Anführungszeichen geändert hat. Ich hab mal probiert eine besonders lange Variable über mehrere Zeilen zu verteilen und alles ist explodiert (weil das natürlich mit grep/awk/sed auf Zeilenbasis geparsed wird)
|
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von csde_rats am 30.09.2021 16:52]
|
|
|
|
|
|
und wenn man solchen leuten dann mal envsubst zeigt öffnet sich ne ganze neue welt.
e: aber ich hab gut reden, neulich auch mit `sed`an was gescheitert, im endeffekt hab ich rpl dafür dann genutzt. nur echt mit upstream change zwischen debian bullseye, buster und stretch und inkompatiblen cli flags...
|
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von [KdM]MrDeath am 30.09.2021 18:10]
|
|
|
|
|
|
| Zitat von [KdM]MrDeath
viel spass damit :x
was ich dann immer gerne mach: selenium tests rein die mir in zukunft garantieren dass da nicht wieder jemand rumpfuscht, haben wir für passwörter sowieso ende-zu-ende und ich hätte das auch noch gern bei jedem systembuild ausgeführt aber das ist ne traurige eigene geschichte.
| |
Das Problem wird "bald" angegangen. Das Single Sign On muss dringend ausgetauscht werden. Dessen Code ist so fürchterlich und irgendwo dort scheint eine unnötige Validierung zu sein. Kannst dem Kollegen ausrichten: Das Passwort wird sicher abgelegt, es hat nur historische Gründe. Antwort des Devs der am längsten dabei ist: "Das war schon immer so!"
|
|
|
|
|
|
|
|
|
|
|
Hat Schilling nicht tatsächlich bei Heise in den Foren gepostet?
Ich knobel hier ein einem Rätsel. Warum ist globale Variable optarg von getopt() im GDB verdeckt? Ich verstehe es nicht. Für getopt() benötigt man den Header unistd.h, welcher getopt_posix.h und schließlich getopt_core.h inkludiert.
Deklaration im Header
|
/* For communication from 'getopt' to the caller.
When 'getopt' finds an option that takes an argument,
the argument value is returned here.
Also, when 'ordering' is RETURN_IN_ORDER,
each non-option ARGV-element is returned here. */
extern char *optarg;
| |
Definition im Source
|
109 /* For communication from `getopt' to the caller.
110 When `getopt' finds an option that takes an argument,
111 the argument value is returned here.
112 Also, when `ordering' is RETURN_IN_ORDER,
113 each non-option ARGV-element is returned here. */
114
115 char *optarg = NULL;
| |
Deklaration und Definition sehen für mich fein aus.
Mache ich einen Denkfehler? Kann ich GDB darum bitten mir den Ort eine Variablendeklaration anzuzeigen, also in welcher Datei das optarg deklariert ist. Was mir auffällt, ich bekomme für p &optarg eine andere statische Adresse als für p &'optarg@GLIBC_2.2.5'.
|
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von hoschi am 13.10.2021 11:34]
|
|
|
|
|
|
|
|
|
|
| Zitat von hoschi
Hat Schilling nicht tatsächlich bei Heise in den Foren gepostet?
| |
ja, unter dem namen wie ich ihn genannt hatte
|
|
|
|
|
|
|
Danke Dir! Gut gemacht. Das liest sich interessant.
Ich habe gerade etwas schlimmes getan, aber das war meine Aufgabe.
|
Code: |
@forgodssake:~$ java -version
openjdk version "1.8.0_292"
OpenJDK Runtime Environment (build 1.8.0_292-8u292-b10-0ubuntu1~12.04.1-b10)
OpenJDK 64-Bit Server VM (build 25.292-b10, mixed mode)
|
|
|
|
|
|
|
|
|
Du sagst also du hättest nur Befehle befolgt?
|
|
|
|
|
|
|
15 Jahre alte libc, 10 Jahre altes JDK: da hätte man doch auch direkt bei COBOL bleiben können.
|
|
|
|
|
|
Thema: Der Linux-Thread 100 != 0x24 ( Ein Kernelupgrade später... ) |