GCP - Artifact Registry Persistence
Last updated
Last updated
Για περισσότερες πληροφορίες σχετικά με το Αποθετήριο Τεχνολογικού Αντικειμένου, ανατρέξτε στο:
Τι συμβαίνει αν ένα απομακρυσμένο και ένα τυπικό αποθετήριο αναμειγνύονται σε ένα εικονικό και υπάρχει ένα πακέτο και στα δύο;
Χρησιμοποιείται το πακέτο με τη υψηλότερη προτεραιότητα που έχει οριστεί στο εικονικό αποθετήριο
Εάν η προτεραιότητα είναι η ίδια:
Εάν η έκδοση είναι ίδια, χρησιμοποιείται το όνομα της πολιτικής με το πρώτο αλφαβητικά στο εικονικό αποθετήριο
Διαφορετικά, χρησιμοποιείται η υψηλότερη έκδοση
Επομένως, είναι δυνατόν να καταχραστείτε μια υψηλότερη έκδοση (σύγχυση εξάρτησης) σε ένα δημόσιο αποθετήριο πακέτων εάν το απομακρυσμένο αποθετήριο έχει υψηλότερη ή ίδια προτεραιότητα
Αυτή η τεχνική μπορεί να είναι χρήσιμη για διατήρηση και μη εξουσιοδοτημένη πρόσβαση, καθώς για να την καταχραστείτε απαιτείται απλώς να γνωρίζετε το όνομα μιας βιβλιοθήκης που αποθηκεύεται στο Αποθετήριο Τεχνολογικού Αντικειμένου και να δημιουργήσετε αυτήν την ίδια βιβλιοθήκη στο δημόσιο αποθετήριο (π.χ. PyPi για την Python) με μια υψηλότερη έκδοση.
Για τη διατήρηση, πρέπει να ακολουθήσετε τα παρακάτω βήματα:
Απαιτήσεις: Πρέπει να υπάρχει ένα εικονικό αποθετήριο και να χρησιμοποιείται, πρέπει να χρησιμοποιείται ένα εσωτερικό πακέτο με ένα όνομα που δεν υπάρχει στο δημόσιο αποθετήριο.
Δημιουργήστε ένα απομακρυσμένο αποθετήριο εάν δεν υπάρχει
Προσθέστε το απομακρυσμένο αποθετήριο στο εικονικό αποθετήριο
Επεξεργαστείτε τις πολιτικές του εικονικού αποθετηρίου για να δώσετε υψηλότερη προτεραιότητα (ή ίδια) στο απομακρυσμένο αποθετήριο. Εκτελέστε κάτι παρόμοιο με:
Κατεβάστε το νόμιμο πακέτο, προσθέστε το κακόβουλο κώδικά σας και καταχωρίστε το στο δημόσιο αποθετήριο με την ίδια έκδοση. Κάθε φορά που ένας προγραμματιστής το εγκαθιστά, θα εγκαθιστά το δικό σας!
Για περισσότερες πληροφορίες σχετικά με τη σύγχυση εξάρτησης, ανατρέξτε στο: