un

guest
1 / ?
back to lessons

Skanner MOAD jako Praktyka Permakulturowa

Permakultura zaczyna się od obserwacji przed działaniem. Spędź czas w systemie, który chcesz zmienić. Zrozum jego przepływy, gromadzenie się, oraz strumienie odpadów przed projektowaniem swojego interwencji. Ogrodnik, który obserwuje, gdzie wody zbierają się, gdzie dociera światło słoneczne, oraz gdzie koncentrują się składniki odżywcze, umieszcza rośliny sprawniej niż ten, który stosuje ogólny plan.

Skanner MOAD zastosowanie tego zasady do ekosystemów oprogramowania. Przed zgłoszeniem pierwszego problemu, prześwietl projekty i języki. Opisz rozkład wadliwości: ile projektów zawiera CVE-407? Które mają je w ważnych ścieżkach? Które pakietów upstream, jeśli zostaną naprawione, przekażą poprawkę do największej liczby zależnych? Obserwuj ekosystem przed działaniem na jakimkolwiek węźle.

Permakultura Zastosowana do Kodu: skanuj 2192 magazynuj 2192 napraw 2192 wyjaw 2192 pętla

Kontrastuj to z praktyką wydobywającą: odkryjesz wadliwość, sprzedajesz ją brokerowi wadliwości, zbierasz płatności, odchodzisz. Badacz wyjął kapitał finansowy z wiedzy i odszedł. Wiedza nie rozprzestrzeniała się. System nie poprawił się. Używający przyszłych projektów pozostali wrażliwi. Broker posiada wiedzę, która ulega obniżeniu wartości, gdy wadliwość starzeje się bez wyjawienia.

Praktyka permakomputera: odkryjesz wadliwość, naprawisz ją, wyjawisz, zgłoisz do upstream, wydajesz poprawkę jako domena publiczna. Wiedza rozprzestrzenia się bez utraty - wręcz przeciwnie - zwiększa się: wyjawione CVE staje się odniesieniem, wpis MOAD uczy wzorca, przyszli badacze znajdują nowe przypadki korzystając z tego samego wzorca. Zamykająca pętla zamiast wydobywania kończącego się.

Obserwacja permakulturowa poprzedza działanie permakulturowe. Skanowanie generuje dane dotyczące wyników fali, grafów zależności oraz liczby punktów obciążonych przed przesunięciem jakiejkolwiek poprawki. Te dane kształtują te patche, które są wysyłane najpierw: wysokie węzły między, zanim liście, ponieważ naprawa szeroko zależnej biblioteki przekazuje się dalej na każdym poziomie wysiłku.

Nie Wydaj Odpadów: Trzy Ścieżki Wyjawienia

Trzy ścieżki, które badacz może wybrać po odkryciu krytycznej wadliwości w popularnej bibliotece open-source:

A. Sprzedaj to agencji do wykrywania luk za 10 000 dolarów.

B. Zgłoś to prywatnie deweloperowi z 90-dniowym harmonogramem wydania, a następnie opublikuj niezależnie od statusu naprawy.

C. Wprowadź poprawkę jako pull request natychmiastowo z jednoczesnym publikowaniem.

Zastosuj zasadę permakultury 'nie wydaj odpadów' do oceny każdej opcji. Zidentyfikuj, jakie wyjścia każda ścieżka produkuje, dokąd te wyjścia idą, oraz które wyjścia opuszczają system jako odpad (niewykorzystywana energia, która nikomu nie służy).

Zbieranie w otwartych systemach

Drugi zasadę permakultury: zbieraj i przechowuj energię, gdy płynie obficie, aby mieć zapasy, gdy płynie słabo. System zbierania deszczówki przechowuje wodę podczas burz na późniejsze użytkowanie w okresie suszy. Sad z owoców drzewnych przechowuje energię słoneczną jako owoce i biomasa przez całe sezony. Celem jest dopasowanie czasu przechowywania do czasu obfitych dostaw.

Zagadnienia ważne Hamminga: każde nowe podejście do problemu łączy się z Twoją listą ważnych zagadnień, co zwiększa wydajność produktywną. Jedna wskazówka dotycząca entropii informacji dla Shannona zdezaktywowała dziesięć lat pracy teoretycznej, ponieważ łączyła się z każdym otwartym pytaniem na jego liście naraz. Pozyskane wiedza płacił zyski związkowe.

Otwarte źródło składania działa inaczej niż indywidualne składanie. Napraw wprowadzona do canonical repozytorium przechowuje energię w miejscu, skąd każde późniejsze odgałęzienie automatycznie korzysta z niej. Pula energii w repozytorium i składa się przez graf zależności.

Artykuły MOAD przechowują energię inaczej: każdy post nauczania wzorca skanowania, a nie tylko wyjawianie konkretnej sytuacji. Badacz, który przeczyta artykuł o CWE-407 MOAD, dowiaduje się nie tylko o tym, że Projekt X miał wyciek, ale też jak wygląda wzorzec wycieku w każdym języku, jak go szukać oraz jak go odróżnić od podobnych, nieczynnych fragmentów kodu. Przyszli badacze znajdują nowe przypadki, korzystając z przechowywanego wzorca, a nie odkrywając go od podstaw.

Mechanizm przechowywania energii ma tyle znaczenia, co energia sama w sobie. Wiedza przechowywana w prywatnym zeszytcie składa się tylko dla właściciela zeszytu. Wiedza przechowywana w publicznym repozytorium składa się dla wszystkich, którzy ją przeczytają. Wiedza przechowywana w bazie CVE składa się dla wszystkich, którzy korzystają z oprogramowania do skanowania bezpieczeństwa. Każde miejsce przechowywania ma różne cechy składania.

Zglosiciele problemów & Indywidualne Listy Problemów

Hamming utrzymywał listę 10 ważnych problemów, do których często wracał. Jego lista funkcjonowała jako indywidualne źródło energii trwałego inwestycji w dopasowywanie wzorców, płacącej zyski każdorazowo, gdy pojawiał się nowy sposób postępowania.

W jaki sposób zglosiciele problemów w projekcie open-source pełnią podobną funkcję do osobistej listy problemów Hamminga? W jakim się różnią? Zaznacz przynajmniej jeden zaletę zglosiciela nad listą osobistą oraz przynajmniej jeden zaletę listy osobistej nad zglosicielem.

Pętla MOAD jako Zamykony System

Permakultura: w dobrze zaprojektowanym systemie wyjście jednego procesu odżywia wejście innego. Brak wyjścia opuszcza system jako odpad. Kurczak w sadzie żywnościowym produkuje jaja (pożywienie), odchodów (mokra odżywienie), kontrolę pasożytów (usługa) oraz ryczenie (aeracja gleby). Każde wyjście kieruje do kolejnego procesu zamiast opuszczać system.

Model fabryki MOAD buduje podobną pętlę zamykaną. Każde stadium produkuje wyjścia, które odżywiają następne:

Skanowanie produkuje: potwierdzony incydent defektu, mapę lokalizacji węzłów dotkniętych, oszacowanie ciężaru opartego na międzynarodowym i ruchu.

Naprawa produkuje: poprawka kodu, test jednostki potwierdzający naprawienie, różnicę przeglądającą przez konserwatorów.

WPIS MOAD tworzy: artykuł w domenie publicznej wyjaśniający klasę wad, wzorzec skanowania oraz podejście do naprawy. Kapitał intelektualny, który przetrwałby poza jakąkolwiek pojedynczą wersją.

Odkrycie CVE tworzy: standardowy zapis w NVD, wyzwalający automatyczne skanery bezpieczeństwa we wszystkich zainfestowanych instalacjach. Kapitał społeczny dla społeczności bezpieczeństwa.

Pull Request w źródle tworzy: naprawę w źródle kanonicznym, automatycznie propagując się do wszystkich forków na następnej aktualizacji zależności.

Każde wyjście odżywia się z powrotem: wpis MOAD nauczający badaczy znajdować nowe wersje, co generuje nowe skany. Jednostka testowa staje się strażnikiem regresji. Zapis CVE prowadzi do przyjęcia poprawki przez zespoły obsługi, które w przeciwnym razie jej ignorowałyby. Pętla się zamyka.

Warunek zatrzymania: wydanie poprawki bez potwierdzenia zdolności odbiorców zalewa kolejki. MOAD-0001 & MOAD-0005 łączą się: naprawa O(N²) w wysokim węźle międzywęźlarskim & każdy kolejny processor zalewa jednocześnie. Zasada projektowania systemu dla całości, stosowana również w permakulturze, ma tutaj zastosowanie: optymalizacja komponentu może stworzyć nowy barierek w dalszej części.

Mapowanie wyjść do formy kapitału

Pipelina MOAD tworzy pięć wyjść: wynik skanowania, poprawka, wpis MOAD, odkrycie CVE oraz pull request w źródle.

Mapuj każde wyjście do formy kapitału, w której głównie się rozwija. Następnie zidentyfikuj krok pojedynczy, który, jeśli zostanie usunięty, wytworzy najwięcej 'odpadowych' - najwięcej energii nierozrzuconej w systemie - i wyjaśnij, dlaczego.