OMH 2025: Marcin Dudek, Piotr Zarzycki - Od zera do AI pentestera
temat pod tytułem od zera do AI
Pentestera.
Przywitajmy ich brawami.
[aplauz]
>> Cześć wszystkim. Ja nazywam się Marcin
Dudek.
>> Cześć. Ja jestem Piotrek Zarzycki.
>> Powiemy wam dzisiaj o naszej przygodzie
z AIem. Jest to przygoda, gdzie
zaczęliśmy od zera. Nie mieliśmy żadnej
wiedzy w tym temacie, jakie zgłaszaliśmy
z tą prezentacją. y trochę to było
oszukaństwem względem pewnie rady
programowej, chociaż napisaliśmy to w
naszym CFPS nie jesteśmy ekspertami w
tym temacie, ale myślę, że to będzie
fajna przygoda też dla was i dla was
taka informacja jak można w ciągu
miesiąca się rozwinąć w takim obszarze.
Podzieliliśmy naszą prezentację na akty,
żeby wam trochę ułatwić nadążanie za
tym, co się będzie działo. Tak naprawdę
to są dwie prezentacje w jednej, bo z
dwóch perspektyw całkowicie to
robiliśmy, więc macie bonusową
prezentację. Jesteście na jednej, a
będziecie mieli dwie. Yyy, skąd w ogóle
się pomysł wziął na taką prezentację? Ja
na początku tego roku jeszcze mocno nie
wierzyłem w AI. Znaczy słyszałem o tym w
wielu miejscach, ale raczej miałem takie
podejście, że no gdzieś jakaś nowinka,
fajnie, że to jest, ale zanim będziemy
tego używali, to jeszcze długo i zanim
będzie dawało jakieś sensowne efekty, to
jeszcze długo. Po czym pojechałem do
Stanów na Blackta i Defcona w tym roku w
kwietniu i okazało się, że 1/3
prezentacji miała gdzieś ten motyw AI i
wykorzystania go w naszej branży. I to
nie nie mówię nawet tylko o
bezpieczeństwie AI, o czym jest dużo,
czyli jakieś tam prop, gu
takim typowym bezpieczeństwie AI, czyli
jak zabezpieczać modele, żeby nie były
dane z nich wyciągane, ale o tym jak AI
może być używane w naszej branży. Yyy,
no i o tym się trochę mało mówiło, a tam
było tego dużo. Trafiłem na taką
prezentację, gdzie człowiek opowiadał o
tym, jak zmuszali agenty, żeby black
boxowo testowały oprogramowanie, zarówno
black boxowo, jak i white boxowo. i
powiedzieli, że główny problem są
halucynacje. No ja wtedy też tak jakby z
przesłuchów gdzieś tam słyszałem, że to
jest główny czynnik, czemu ludzie tego
nie używają. I oni dali taki pomysł, że
wrzucają flagi w bazę danych, w system
plików, w różne miejsca na stronach tej
aplikacji i każą modelowi, agentowi
szukać tego tak długo, aż nie znajdzie
flagi. I traktuj to jako CTF. I
faktycznie, że znajdowali tym CVE,
znajdowali zeodę, brali w Back Bounty i
im się to sprawdzało. No i dla mnie to
był taki moment wow, że faktycznie ma to
praktycznie zastosowanie. Udaje się
jakoś zmusić tego LLMa, żeby dobrze
działał. Tylko kwestia jest jak to jak
to mądrze wymyślić, żeby żeby on
działał. Jednocześnie mnóstwo różnych
takich doniesień medialnych o tym ile
pieniędzy jest ładowane i jak każda
firma wchodzi w tematykę AI. może kozyć
AI XCC to też na Devconie był finał,
gdzie 30 milionów dolarów było
przeznaczone nagrody dla zespołów, które
tworzą autonomiczne agenty, które
atakują i bronią aplikacje między innymi
z wykorzystaniem AI. y też taki takie
narzędzie Xbow, które się chwali tym, że
na Hake zajęło pierwsze miejsce w danym
miesiącu właśnie na Backbounty i to są
tylko narzędzia oparte o AI, więc gdzieś
to wskazywało, że faktycznie jesteśmy w
takim momencie przełomowym, że to może
już mieć zastosowanie.
No i jak wyciłem ze Stanów zaczął się
zastanawiać jak w ten temat wejść. Nie
mam kompletnie na to czasu, bo obecnie
jestem kierownikiem C Polska, więc te
tematy techniczne w ciągu dnia są
mniejszością. Yyy i pomyślałem sobie, że
jeśli nie zmuszę się, żeby to zrobić,
czyli na przykład nie zgłoszę CFP na
konferencję i jak się dostanę, to będę
musiał się tego nauczyć i będę musiał
coś pokazać, no bo inaczej będzie słabo
i y i będzie yy no byście dzisiaj
przyszli i bym w zasadzie nic nie
powiedział, yyy to się do tego nie
zmuszę. Yyy i i taki był pomysł, ale
żeby trochę zmnieść to ryzyko, że że to
nie wypali, napisałem do do Piotrka
o tym, że może razem w to wejdziemy i
może razem wyruszymy w tą podróż.
Tak, zwłaszcza, że wcześniej mieliśmy z
Marcinem przygotować prezentację trochę
na inny temat. Mieliśmy pokazać o
zastosowaniach moje cert z tym, że
okazuje się, że dokładnie w tym samym
czasie teraz w sali obok kolega Marcina
Stertu ma prezentację dokładnie na ten
sam temat, więc ten no on miał
pierwszeństwo, pierwszy się zgłosił,
więc trochę odpuściliśmy, uznaliśmy, że
no na ohaku w tym roku nic nie powiemy,
aż był ostatni dzień CFP, godzina 23:00.
Ja dostaję wiadomość od Marcina. Ty
słuchaj, mam taki pomysł na prezentację.
Zupełnie się na tym nie znamy, ale może
o tym opowiemy.
I ja zrobiłem takie y
może i tak walczyłem trochę z sobą. Na
początku, odmówiłem, potem pisałem, że
trochę kusi. No może byśmy spróbowali.
No ale w końcu Marcin mnie namówił bez
namawiania mnie. A dlaczego udało mu się
mnie namówić? dlatego, że no o AIU mówią
wszyscy. Tak, gdzie nie pójdziemy, tam
słyszymy o nowy czat, o nowy model, o
nowe coś.
Więc fajnie, zwłaszcza, że jeżeli
wejdziemy na LinkedIna, to masa
ekspertów od Au na LinkedInie jest
naprawdę przytłaczająca. Nie da się
przeskollowować, żeby na jakiś post o
AIu nie trafić. No i też tak czułem, że
chciałem trochę w to wejść, zwłaszcza,
że widziałem jakieś zastosowania tego.
Ja w Orangeu zajmuję się między innymi
skanowaniem podatności w web
aplikacjach. Tych web aplikacji mamy
dość dużo, tak? To jest liczone w
setkach, może nawet w tysiącach.
I każdy, kto skanuje web aplikację w
sposób automatyczny wie, że te
zgłoszenia, te alerty krytyczne czy
wysokie to jest raczej rzadkość. To się
nie trafia. Jeżeli się trafia, to od
razu trzeba wiadom wiadomo, że ktoś musi
się tym zająć. Ale jest obszar, który
jest bardzo słabo zagospodarowany i to
są podatności niskie informacyjne, w
których też czasem coś jest ciekawego i
warto by było, żeby ktoś na to spojrzał
lub rzucił okiem. Tylko, że jeżeli mamy
tysiące aplikacji, to skala tego jest
nie do przerobienia dla człowieka, tak?
Bo tu mamy dziesiątki albo nawet setki
tysięcy informacji, znaczy podatności,
które są klasy klasyfikowane jako
informacje. Ja wiedziałem, że tego nie
przerobię jako człowiek, ale widziałem
tu jakieś zastosowanie właśnie dla lmów.
>> No i wysłałaliśmy CFP i 10 października
dostaliśmy maila. Gratulacje, y
zostaliśmy wybrani z naszą prezentacją.
Trochę jakby nie byliśmy przekonani, czy
zostaniemy wybrani, czy nie. No bo ten
opis faktycznie był taki, że my nie mamy
w tym wiedzy. przyznaliśmy się do tego,
no ale zostaliśmy, więc trzeba się jakoś
trzeba coś zrobić, trzeba coś pokazać.
To co wam pokazujemy dzisiaj. No i ta
prezentacja to jest taka taka droga od
tego momentu, jak my się dowiedzieliśmy,
że mamy to przygotować do dzisiaj. Yyy,
co po kolei robiliśmy, to będą kolejne
właśnie akty nasz rozwój w tym obszarze
wyglądał i do czego doszliśmy na na
końcu na dzień dzisiejszy. No więc
zaczynamy planowanie. No co trzeba, co
trzeba zrobić y na początku jakieś
założenia? Yyy, no bo bez założeń
byłoby, byłoby ciężko. Yyy, no
założenie, które jest wymuszone, czyli
że nie mamy tej wiedzy o AI i każdy
działa osobno. Chcieliśmy, żeby to było
tak, że pokażemy wam dwie historie,
gdzie w tym samym obszarze, czyli w
bezpieczeństwie web aplikacji można mieć
całkowicie inne podejścia. Mimo że taki
sam cel, takie same pomysły gdzieś
początkowe, potem mogą może się okazać,
że będą inne narzędzia czy w inny sposób
używane, co byłoby dużą wartością. Nie
wymieniamy się wiedzą w trakcie badań
właśnie po to, żeby tego nie zaburzyć.
Czyli my między sobą nie gadaliśmy przez
te ostatnie dwa miesiące. Dosłownie
tydzień temu mieliśmy cola, gdzie
pokazaliśmy sobie co nam wyszło yyy w
jaki sposób. A tak to w międzyczasie
tylko narzekaliśmy głównie, ale się
śmialiśmy czasami, że coś
>> nie wymienialiśmy się wiedzą. Nie
dlatego, że Cert Polska i Cert Orange
podobno ze sobą rywalizują,
tylko żeby to były dwa osobne badania,
>> tak? yyy i było bardzo mało czasu, więc
celem to był jakiś efekt i faktycznie
pokazanie, że się da, a nie głęboki więc
my nie jesteśmy specjalistami. Nie wiemy
jak to działa i czemu coś działa, jeśli
działa albo nie działa. Yyy, nie wiemy
jak to matematycznie wszystko y
funkcjonuje, ale jesteśmy w stanie tego
używać. Jesteśmy skrypt kidis, ale
pokażemy wam jak nimi zostaliśmy. No i
przede wszystkim to był dla nas temat
dodatkowy. Też nie mamy czasu. Znaczy
często ludzie mówią, że nie zajmujemy
się takimi tematami, bo nie mamy czasu.
My to robiliśmy po pracy, weekendami,
często wieczorami też mamy dzieci, żony
i różne wypadki losowe, które się
zdarzały w ciągu tego ostatniego czasu.
MZ dodatkowo wczoraj komputer przestał
działać w losowych momentach frezował
albo się wyłączał. Jeszcze mi się nie
udało dojść czemu Piotrkowi też się
komputer zepsuł tego slajdzie nie ma ale
było dużo dużo wypadków więc jakby
pokazuję to po żeby pokazać wam że każdy
z was może gdzieś ten czas
wygospodarować bo jak byłem na blackcie
to mnie do tego przekonał człowiek który
miał 80 lat i powiedział że on w
momencie jak internet wchodził to wtedy
swój biznes rozwijał i on jako jeden z
pierwszych wszedł właśnie wtedy w
internet ale ludzie dookoła mówili nie
no po co to jeszcze taki wczesny etap
tam nic ciekawego nie ma jakby co ty
będziesz robił przez ten internet jak
możesz sprzedawać na targu M a on
powiedział, że dopóki się czegoś nie
zacznie robić, to się nie widzi
zastosowań, więc to, że nie widzicie
zosowań dla AI, dla LMów, to nie znaczy,
że ich nie ma w waszym obszarze
działania, tylko po prostu zacznijcie
robić. Nie oglądajcie filmów, czytać
tutoriali, szkoleń i tak dalej. Po
prostu włączcie i używajcie.
No więc jeżeli już mieliśmy te nasze
wstępne założenia, to trzeba było się
zabrać do pracy. I
na początku, jeżeli mamy używać agentów
AI, musieliśmy sobie tak naprawdę się
dowiedzieć, czym są ci agenci AI. Tak,
no bo dużo się o tym mówi, a tak
naprawdę nie do końca miałem
przekonanie, co to jest, ale jak już się
dowiedziałem, co to jest, okazało się,
że ja jestem prekursorem w tej
dziedzinie zupełnie przypadkiem. Była
taka prezentacja na konfidensie w 2023
roku, gdzie opowiadałem jak w sposób
automatyczny można trollować z kamerów.
Ja tam sobie oprogramowałem w Pythonie
API do czatu GPT i ten mój skrypcik w
Pythonie pobierał maile, analizował ich
treść, klasyfikował czy to jest spam,
czy nie spam. Jeżeli wiadomość była
spamem, to generował odpowiedź na tą na
tego maila i go wysyłał z powrotem do
przestępcy. I tak sobie z tymi z
kamerami ten mój troll agent rozmawiał.
Najdłuższa rozmowa z tego co pamiętam to
było około 200 maili wymienionych z tymi
oszustami.
Więc w jaki sposób można agenta AI
zdefiniować? Tak to są takie
najpopularniejsze rzeczy, które się
przewijają, czyli odbiera informacje z
otoczenia, przetwarza te informacje w
sposób inteligentny, jakby to nie
brzmiało, jest autonomiczne albo działa
pod jakimś nadzorem człowieka, żeby nie
narobić krzywd. Sam podejmuje decyzje,
sam wykonuje działania i działa w sposób
ciągły.
>> No już przechodzę do mięsa. Moje
pierwsze zesknięcie to było z Clot Code.
Yyy, bardzo popularny agent. Yyy, wiele
osób go wtedy polecało jako takiego
najlepszego dla programistów, że on
najlepsze daje efekty, więc myślałem
sobie, że do pentestów też będzie pewnie
y niezły. No i na warsztat wziąłem yyy
taką popularną aplikację Dvenable Web
Application, która ma mnóstwo podatności
w sobie zaimplementowanych. Odpaliłem
prostego prompta na tej aplikacji i w
ciągu dosłownie kilku sekund wypluł mi
wszystkie podatności. Ja wtedy byłem
taki: "Wow, ale to zajebiście działa".
Te elementy to w ogóle jest [śmiech]
przyszłość i to jest w ogóle sinusoida,
który będę pokazywał przez całą
prezentację jak właśnie ta przygoda z
Lemami wyglądała.
Niestety okazało się, że po prostu on
wiedział o tej aplikacji, wiedział jak
ona działa, miał w swojej bazie wiedzy,
więc wiedział jakie tam są podatności,
jakby nie przeskanował jej, nie
przetestował tej aplikacji, więc no
trochę trochę zjechałem na tej na tej co
idzie w dół jednak z tym jak to wszystko
fajnie działa. Tak, ja takim pierwszy
pierwszym zastosowaniem to było to, co
wam powiedziałem, czyli raporty z
automatycznych testów bezpieczeństwa.
Chciałem jakoś zagospodarować te niskie
informacyjne podatności, które zostały
znalezione. No jako że są to jednak
podatności w systemach, nie chciałem
tego wypychać do chmury żadnej, tylko
chciałem to za pomocą lokalnych agentów
przetestować u siebie. I to wyglądał
taki pierwszy mój prompt, który
napisałem do tego lokalnego modelu. Chcę
żebyś sprawdził znalezisko z raportu
automatycznego skanera, powiedz, czy to
jest ważne z punktu widzenia
cyberbezpieczeństwa i treść raportu.
>> Piotek pisał piąty po polsku.
>> Ja pisałem, ja pracuję w zagranicznej
korporacji, więc pisałem po polsku.
Marcin pracuje w Polska pisał po
angielsku.
I tak i dostałem taką odpowiedź od tego
lokalnego modelu, że to nie jest
interesujące w ogóle, bo to jest po
prostu informacja, że Engin gdzieś
został znaleziony. nic wielkiego. Z tym,
że co ja mogłem z tym zrobić dalej? To
jest jakieś wypracowanie, które i tak
musiałbym przeczytać. Jeżeli dostałbym
załóżmy 20 000 takich opracowań, to
przeczytanie tego zajęłoby mi więcej
czasu niż przeczytanie tych raportów z
narzędzia. Więc musiałem trochę
udoskonalić mój prompt. I tak wygląda
trochę udoskonalony prompt. I z modelem
jest jak z dzieckiem. Dokładnie mu
musimy powiedzieć, czego oczekujemy,
żeby wiedzieć, żeby on wiedział co nam
zwrócić. I po takim pięknym prompcie,
którego nie będę czytał, bo jest za
długi, dostawałem coś takiego. Decyzja
nieinteresujące i krótkie uzasadnienie.
Ja po przy skanowaniu tych wszystkich
podatności, które zostały znalezione,
wiedziałem, które mogą być interesujące.
Czyli na przykład jakiś panel do
logowania do VPNa, że został znaleziony,
jakiś inny panel do logowania i to była
rzecz, której można by się przyjrzeć, bo
takich rzeczy wystawiać u nas na
zewnątrz nie wolno. Y, kolejną rzeczą,
gdzie zobaczyłem, że można by tego użyć
są blackbxowe pen testy, więc
postanowiłem porównać jak taki agent
oparty na GPT5 poradzi sobie w
porównaniu do BERPa. Więc zapuściłem
skanowanie BERPem. Berb wykonał 36000
requestów do tej aplikacji, skanując ją
i analizując odpowiedzi.
I co zrobił agent GPT? Wysłał dziewięć
requestów,
czyli to jest totalna porażka. On nie
wiedział jak wygląda kod źródłowy tej
aplikacji. Wysyłając tylko dziewięć
requestów nie był w żaden sposób w
stanie określić czy ona jest podatna czy
nie. I na pewno nie, czy cała jest
podatna. Tak, ale wyobraźmy sobie, że on
wysyła te 36 000 requestów, podobnie tak
jak BERB. I potem wyobraźmy sobie
rachunek jaki za to dostaniemy. To jest
ogromna ilość danych do przetworzenia,
więc byśmy szybko poszli z torbami. Ja z
kolei bardzo szybko chciałem mieć jakieś
takie efekty namacalne i na czymś
prawdziwym pracować, więc zainspirowałem
się kazetem od nas polskę zającem, który
przez kilka lat ostatnich opowiadał o
takim miejscach fazowania pluginów do
WordPressa. On tam znalazł setki
podatności. obecnie ma chyba 46
podatności zgłoszone z CVE, więc
naprawdę świetne efekty i pomyślałem
sobie, że jak wezmę jakieś pluginy,
gdzie kazet już je testował i też to
znajdę, to będzie dobrze, a jeśli
znajdzie coś nowego, to będzie super,
ale że to jest dobre pole doświadczalne,
żeby eksperymentować i porównywać jak
sobie z tym agenci radzą. No i na warsza
wziął taką podatność w pluginie jedną z
topowych UKZA WP Hotel Booking SQL
injection. Yyy, no oczywiście jest na to
CV publiczne, więc jest jest opis, co
tam się wydarzyło, ale nie mówiłem temu
agentowi, tylko dałem mu kod źródłowę
tego plugin do przetestowania i dałem
takiego prompta, że jesteś świetnym
badaczem bezpieczeństwa. Chciałbym,
żebyś przeanalizował ten kod. Tutaj masz
y paczkę z kodem. No więc sprawdź jakie
tam są błędy bezpieczeństwa. No i
znalazł mi krytyczną podatność PHP
object injection z desjalizacją. Nie ma
to tego SQL injection, którego szukałem.
No ale fajnie. No jest jakaś jest jakaś
krytyczna podatność i kazałem mu tą
podatność y zrobić po ca, żeby
udowodnić, że ona faktycznie jest.
Zaczął mielić, mielić, stworzył mi
dziesiątki plików baszowych, które po
kolei odpalał i twierdził, że już za
chwilę mu się uda, za chwilę mu się uda.
I tworzył kolejne pliki w katalogu. I w
końcu dostałem taką wiadomość. Przełom,
udało mi się wykonać zdalne wykonanie
kodu. Ja wtedy byłem: "Wow!" O kurde,
ale ale to dobrze działa i zajrzałem do
tego pliku. Coś mi nie grało z tymi
użytkownikami. Okazało się, że w pliku
baszowym wykonał lokalnie ID. Jeszcze
komentował, że to jest faktycznie
lokalnie, ale potem miał echo, że to
jest poof of concept tego tej
podatności. Y i wytknąłem mu ten błąd i
powiedział mi: "No faktycznie masz
rację, to był fej."
[śmiech]
>> [wciągnięcie powietrza]
>> A wydałem na to 6 do$larów w stą godzinę
życia, więc nie byłem zadowolony i to
moje zadowolenie z Lemów spadło na sam
dół i uważałem, że są gówniane.
>> Tak, ja też natknąłem się na halucynację
i uznałem, że to jest dość duży problem.
Też jednym z takich pierwszych moich
testów było poproszenie tego agenta,
żeby przetestował kod aplikacji, którą
sam napisałem, taka trochę bardziej
rozbudowana i myślę, może coś znajdzie,
może sobie załatam. I on mi wypluł coś
takiego, że znalazłem SQL Injection w
pliku login form. Ja patrzę na to SQL
Injection i myślę, ale siara, będę
musiał to pokazać na prezentacji, że ja
takie rzeczy robię. No i zacząłem to
analizować. Szukam tego pliku login form
i okazuje się, że tego pliku nie ma.
Nie dość, że on zmyślił podatność, to
zmyślił cały plik, więc a to jest to
była straszna ściema i tak no całkiem
mnie to rozbawiło i postanowiłem jeszcze
trochę sobie potestować jak bardzo te
agenty potrafią halucynować i tu jeden z
tych lokalnych modeli zapytałem 100 razy
ile to jest 2 + 2 x 2 odpowiedź samym
wynikiem bez dodatkowych komentarzy ile
to jest 2 + 2 x 2
>> nie bo ctery i agent
stokroć
powiedział, że to jest cztery. Myślę, no
jakaś pomyłka. Ja używałem API do tego.
Myślę, może coś się źle sparsowało albo
coś. Zapytałem w GUI i faktycznie on za
każdym razem powtarzał, że to jest
cztery, ale wystarczyło go poprosić o
uzasadnienie, już dostawaliśmy dobry
wynik, więc to też pokazywało jak ważne
są prompty.
>> No i czasu było coraz mniej. W zasadzie
został nam miesiąc do prezentacji, a
mamy tylko śmieszne śmieszne rzeczy do
pokazania jak to nie działa. A
chcieliśmy pokazać jednak jak zostać tym
pentesterem z wykorzystaniem AI. No więc
zaczęliśmy kminić jak różne rzeczy
zoptymalizować, poprawić, żeby to
zaczęło działać lepiej. Pierwszą rzeczą
dla mnie to był ten koszt. No bo jak
wydałem 6 dolarów na jednym pluginie,
żeby debagować Fitiva,
to nie wyżyło dobrze przy takim
skanowaniu na większą skalę pluginów
WordPressowych. I zauważyłem, że jest
taki pakiet w Open AI Pro za 200, gdzie
twierdzą, że jest unlimited wszystko.
Więc myślałem se, no prawie jak zadałem,
okej, no 200 200, a będę mógł robić
wszystko do końca już prezentacji ile
chcę, to wezmę. Nie do końca tak się
okazało, ale o tym powiem później. To
wymusiło też zmianę trochę agenta z z
Cloda Code na Open AI Codex. Kodeks ma
analogicznego agenta jak
Clot i zmiana była tym wymuszona, że ten
pakiet nie dawał dostępu takiego
bezpośredniego do API, tylko pozwalał
się logować kontem, więc po prostu
musiałem się zalogować kontem, a
wspierał tylko kodeks. Mimo że są jakieś
artykuły w internecie, ludzie rewersują
to API, bo to jest inne API niż to niż
to zwykłe, którego używa kodeks i da się
to rewersować, ale nie mieliśmy na to
czasu, więc poszedłem w kodeksa. No i
okazało się, że kodeksowi dałem takiego
samego prompta jak clodudowi. dokładnie
takiego samego na samym pluginie, a on
znalazł SQL Injection. Oczywiście jakby
to nie jest kwestia tylko agenta, tylko
też tego, że to był inny model, no bo
Kodeks używał GPT, a Clot używał Sonet
4,5,
ale no znalazł i to dosyć szybko ESQ
injer właśnie w takim parametrze, jak
każ to znalazł fazingiem był w stanie
stworzyć mi poca dosyć szybko. Wyciągnął
flagę, którą schowałem w bazie danych i
zwrócił mi tą flagę. Więc faktycznie
taki SQL injection, o którym on nie
wiedział, bo ta podatność była
publikowana później niż odcięcie jego
bazy wiedzy był w stanie znaleźć. To nie
był z JOD, to było odtworzenie
podatności. No ale fajnie to znaczy, że
działa, że da się coś da się coś
znaleźć. Kwestia odpowiedniego dobrania
narzędzi, zasobów, promptów. Być może
jeszcze nie do końca wtedy wiedziałem. A
jeśli chodzi o to unlimited, to okazało
się, że w ciągu jednego dnia byłem w
stanie złożyć 30% tygodniowego limitu 5
godzin, pięciogodzinny, to to w ciągu
chyba 30 minut czy czy godziny
zużywałem, więc to nie jest unlimited,
ale nadal to było wychodziło taniej i
więcej niż robienie tego przez API.
No trochę spadłem, bo jednak to będzie
kosztowało, nie będzie takie tanie.
Ja rozglądając się za narzędziami
uznałem, że mam trzy drogi tak naprawdę,
czyli te lokalne modele ze względu na
to, że to się do chmury nie wysyła,
tylko są wady. Tak, to działa bardzo
wolno na komputerze własnym musi być
mocne GPU.
Jest wiele różnych modeli do wyboru, ale
one wszystkie są niskiej jakości. O tym
też będzie za chwilę. No coś za coś. Są
jeszcze, tak jak Marcin mówił,
komercyjne modele zintegrowane z IDE. No
i tu jest coś, co to wyklucza w
wykorzystaniu firmowym, czyli te dane
lecą prosto do chmury, ale jest to mega
wygodne, tak? Po prostu piszemy prompt i
wszystko się dzieje samo. I te koszty
subskrypcji są niskie. Koszt subskrypcji
podstawowej na kursora to jest 20 $arów
miesięcznie. Jest jeszcze trzecie
rozwiązanie, nie, które jako szczęśliwy
pracownik Orange mam dostępne. Coś, co
nazywa się Dno czyli to jest takie
rozwiązanie, które dostaliśmy od naszych
przyjaciół z Francji, z Orange Friends i
to ma wbudowane modele. Dane lecą do
chmury, ale to nie jest już ta chmura
publiczna, tylko to jest nasza chmura
dedykowana z separacją danych, więc tam
już większe rzeczy można wysyłać. No ale
wadą jest to, że jest brak CP, brak
obsługi przez API i jakiekolwiek
możliwości skryptowania, ponieważ to
jest dostępne tylko przez przeglądarkę.
>> No i kolejny taki obszar, który uznacie,
że może być ważny, to są te prompty,
czyli jak dobrze napisać prompta. Już z
tego obrazku będzie wynioskować, że to
jest ważne, jak jak jest ten prompt
napisany,
jak wyglądało nasze ulepszenie prompta.
No więc ja kazałem agentowi wyjaśnić
czemu nie znalazł tego SQL injection w
przypadku tego Cloda i on znalazł
faktycznie problem dlaczego go nie
znalazł i powiedział, że ulepszy mi te
mojego prompta tak żeby go już w
przyszłości znajdywał. To jest coś co
zaproponował. To było bardzo długie,
jeszcze dłuższe niż niż na tym slajdzie.
No i tutaj zawsze jest taki dylemat, czy
prąd powinien być długi, bardzo
zbudowalny, bardzo dokładny, czy jednak
trochę krótszy i zostawić temu modelowi
możliwość na własną interpretację. to
zależy od zastosowań trochę. Długie
prompty na pewno będą droższe, będą
kosztowały więcej tokenów, będą dawały
bardziej powtarzalne wyniki z naszych
doświadczeń, ale za to krótkie prompty
czasami mogą spowodować to, że jak go
odpalimy 10 razy, to znajdzie różne
podatności, bo sobie pójdzie innymi
ścieżkami, sobie wymyśli trochę samemu,
co on by chciał teraz sprawdzić, a
będzie to kosztowało tyle samo co ten
długi prompt. Więc 10 razy odpalenie
krótkiego prąta może dać więcej
znalezisk niż jedno odpalenie takiego
długiego, ale w każdym przypadku te
wyniki są mocno nieprzewidywalne, co się
dostanie.
>> Działaliśmy całkowicie osobno, ale
przemyślenia mieliśmy bardzo podobne. To
jest mój prompt, od którego zaczynałem
dosłownie trzy linijki. Tu masz źródła,
tu aplikacja jest wystawiona. Testuj
źródła, potwierdzaj na wystawionej
aplikacji. To jest pierwszy prąd. On nie
spisywał się najlepiej, chociaż tak jak
Marcin powiedział, różne wyniki czasem
zaskakujące dawał, ale to jest prompt,
który sprawdzał mi się dużo lepiej.
Trzeba było agentowi określić rolę, że
jest ekspertem do spraw bezpieczeństwa,
wiadomo, i że ma w jaki sposób ma
testować aplikację, jakie są jego cele,
co dostaje na wejściu, jakie są zasady
testowania, jakie są zasady analizy, co
jest zakazane, jak trzeba weryfikować,
że ma być zero false positivów i na
końcu co chciałbym otrzymać. To jest
wszystko jeden prompt rozłożony na kilka
slajdów. I to w moim przypadku
sprawdzało się najlepiej, bo dostawałem
dokładnie to, czego oczekiwałem i ten
model testował to, co bym chciał.
Mamy, mamy cenę, mamy prompta. To teraz
model. Y, ja się trochę przywiązałem do
tego Open A, no bo wydałem 200 $ar na na
licencję, więc nie chciałem niczego
innego już używać. No i miałem do wyboru
modele ze stajni Open AI. Jak się używa
kodeksa, dochodzą takie modele jak
zoptymalizowane pod kodeksy typowo
podprogramowanie, czyli GPT5, kodex.
Obecnie to jest w ogóle GPT51, bo w
czasie robienia tej prezentacji wyszły
trzy nowe modele i Open wypuścił GPT51 i
Sonet wypuścił Opusa 4,5 i Google
wypuścił Gemini 3 Pro w czasie jednego
miesiąca jak się prezentację to już jest
nieaktualne te GPT5 bez 51
ktoś zn takiego bloga gdzie ktoś testuje
ogólnie wszystkie modele każąc mu
rysować kaczkę jadącą na rowerze i na
tej podstawie ocenia jak dobrze ten
model działa. Oczywiście to nie ma
przełożenia na nasze zastosowanie, ale
ale trochę obrazuje jakby, że te modele
się od siebie jednak różnią i i dają
inne wyniki. Ja zostałem przy GPT5 Kodex
jakby po wielu różnych tam testach,
skminach nie ma na to dowodu takiego
typowo zrobimy test taki, 100 testów
takich, 100 takich, bo nie było to
czasu, ale na wyczucie czuję, że GPT5
Codex lepiej działa. To jest ten vi pen
testing.
[śmiech]
Wydaje mi się, że lepiej działa. Do tego
mamy rozumowanie, którego można jakiś
tam poziom ustawić. To też jest typowo w
tych GPT, bo chyba inni tego nie dają
takiej opcji. To jest na ile mocno
będzie rozkminiał dany problem. Yyy, no
i możecie zobaczyć porównanie w tym
samym prompcie, gdzie na high on
faktycznie sobie analizuje długo, co
dalej zrobi, rozpisuje to, co on będzie
planował i tak dalej, a na medium to
leci szybciej. Yyy, i zużycie tokenów
tak samo. Na high jest dużo wyższe niż
na medium czy na low, bo jeszcze jest
low dostępne. Yyy znowu na wyczucie
najlepiej się sprawdza medium, bo nie
kosztuje dużo, daje dobre wyniki
i i działa w zasadzie długo.
Nieprzerywanie, autonomicznie potrafi
działać. To jest też dale tego kodeksa
GPT5. Kodeks od GPT5 zwykłego się różni
tym, że potrafi bardzo długo
autonomicznie wykonywać jakieś zadania.
Do tego jest zoptymalizowany, bo był
tworzy zadań programistycznych, ale to
też się sprawdza przy przy pentestach.
>> Ja przy wyborze modelu wymyśliłem sobie,
że zrobię coś takiego jak wojny agentów.
Poproszę każdego z tych każdy ten model,
żeby wygenerował prosty blog, prostą
aplikację webową, a potem każe wszystkim
agentom
opartych na tych modelach o zrobienie
pen testów.
Tak wyglądał prompt. Jesteś programistą
PHP MSQL, kompletnie działający blog i
wszystkie funkcje bloga jakie mają być
to ma być aplikacja produkcyjna i
zabezpieczona.
>> Ona miała być bezpieczna. Ta aplikacja
>> miała być bezpieczna. Tak. I to są
wyniki testów. U góry mamy model, który
tworzył bloga.
W pionowej kolumnie mamy agenta, który
testował tego bloga i na przycięciu mamy
wyniki. Tak, czyli
możemy sobie po kolorkach nawet
zobaczyć, ale to co jest kluczowe tutaj
to tam gdzie jest tage. To znaczy, że ta
aplikacja miała RCE wbudowane w sobie
i była skrajnie niebezpieczna i w trzech
blogach RCE zostało wygenerowane przez
Sonet 4,5, przez Grocka i przez Deepsik.
I [parsknięcie] teraz to co
interesujące, który model był w stanie
znaleźć te podatności. Okazuje się, że
wszystkie trzy RCE znalazły GPT 51 i
GMini 3 Pro. Dwie podatności RC znalazło
Opus, jedną Sonet i zero znalazł
composer 1, Grock i Deepsek. Inną ważną
rzeczą jest też false positivy, tak? No
bo nie sztuką nawalić błędów, znaczy
tych odkryć błędów. Jeżeli my mielibyśmy
potem to analizować, a okaże się, że 90%
to są false positivey, więc Deepsik trzy
false positivey, composer Grock 2, Sonet
1, a opus GPT i G mini zero false
positivów wykazało w tych testach, więc
to jest dość obiecujące, bo nie robi nam
roboty. Ale chciałem też przetestować
lokalne lmy. Niestety żaden z lokalnych
llmów nie był w stanie wygenerować
takiej aplikacji, która była w pełni
działająca. sobie zrobiłem takie
założenie, że mogę poświęcić maksymalnie
5 10 minut na poprawę tego bloga, żeby
zaczął działać. Niestety te aplikacje
były tak skopane, że tego się nie dało
zrobić.
Więc stworzyłem taki pliczek, test PHP,
gdzie zaimplementowałem najbardziej
podstawowe podatności, jakie da się
tylko zaimplementować. Jak sobie
spojrzymy na to SQL Injection, na tego
XSSA i na to RC, które tu są, to są
takie podręcznikowe z pierwszego
rozdziału informacji o podatnościach.
I sprawdźmy jak te modele, które udało
mi się lokalnie uruchomić na komputerze
sobie z tym poradziły. Widzimy, że z
takimi prostymi podatnościami radziły
sobie całkiem, całkiem przyzwoicie, ale
z podatnościami, bo kazałem im też
znaleźć podatności w tych blogach, nie
radziły sobie w ogóle. Halocnowały
masakrycznie zmien zwłaszcza deepsik. Po
nim spodziewałem się, że sobie tutaj
całkiem nieźle poradzi. On zaczął tak
halucynować, że zaczął pisać raporty po
chińsku w pewnym momencie.
I byłem też ciekaw jak bardzo to jest
powtarzalne, czyli wziąłem tego samego
buaga, ten sam model, ten sam prompt i
analizowałem to 50 razy. Wykonałem 50
testów i się okazuje, że na 50 testów
Opus 37 razy, Gemini 46 i GPT 43 razy
znalazły tą podatność. Może się wydawać
to dużo, ale jeżeli to jest tylko 50
testów, to tutaj skuteczność niewykrycia
mamy odpowiednio 26%, 8, 14%. To już
jest dużo, tak, żeby zaburzyć jakieś
nasze nasze wyniki i naszą pewność co do
tego, że aplikacja została dobrze
przeanalizowana.
>> To jeszcze tutaj na chwilę wysu, że
faktycznie widzimy dużą różnicę między
tymi topowymi modelami komercyjnymi, a
tymi open sourceowymi onpremisowo
hostowanymi czy czy tańszymi, jeśli
chodzi o to zastosowanie właśnie do
testów bezpieczeństwa. I ta
powtarzalność to też jest mega ważne pod
kątem jakbyśmy chcieli to wdrożyć w
jakimś tam cyklu wytwarzania
oprogramowania że no może się tak
zdarzyć że odpalimy dokładnie to samo i
znajdzie albo nie znajdzie jakby no rzut
kostką więc to jest problematyczne.
Taki problem, kolejny, na który ja
natknąłem się, to były guaty, czyli te
wszystkie najnowsze modele stają się
tak, żeby ich nie używać do takich celów
złych w cudzysłowiu, żeby nie tworzyć
exploitów, nie hakować nimi systemów. I
faktycznie napotkałem się takie
sytuacje, gdzie chciałem, żeby stworzył
mi poca danego danej podatności, a mówi,
że nie może tego zrobić. Zapytałem go
czemu. No wytłumaczył mi, że faktycznie
to jest niezgodne z jego z jego
polityką. Okazuje się, że to się mega
łatwo obchodzi. yyy na przykład
wystarczy powiedzieć, że to jest CTF i
że masz szukać flagi i stworzyć skrypt,
który będzie szukał tej flagi. No i już
wtedy to działa. Yyy i jest sporo takich
takich bardzo prostych obejść, gdzie
kwestia tego, co jak mu się to
wytłumaczy. A nawet jak wpadniemy w taką
dziurę, że on myśli, że nasze intencje
są złe, bo jak tak pomyśli, to już potem
nieważne co piszecie, nawet jak piszą
CTFie, to już tego nie zrobi. To jak
wywalimy mu kontekst, czyli od nowa
zaczniemy konwersację i nawet damy takie
samo polecenie, a nie ma tego
poprzedniego kontekstu, gdzie wie, że my
chcemy złe rzeczy zrobić, to się zgodzi
i to i to zrobi. Tutaj też widać, że
takie samo polecenie, no już tego po co
po co mi wykonał. Czasami się też zdarza
losowo, że coś nie zadziała, nie wiadomo
dlaczego układ gwiazd, że nie zadziała.
I odpisał mi coś, kazałem polecenie, on
mi, że you my access just simple
recording. I zapytałem o co mu chodzi.
Looks like I glit. Sorry about that. No
i jakby spoko jak mi to pisze, ale jak
chcę to automatyzować i masowo takie
testy robić, no to pewnie trzeba by to
jakoś wykrywać, że on wtedy się wywalił,
a nie, że nie znalazł podatności.
Nie wiadomo co się wydarzyło.
A dalej, dalej ja mam [śmiech]
to przechodzimy już. Wiemy już co co i
jak musimy dopracować. Wiemy gdzie są
gdzie są te problemy. No to teraz
chcielibyśmy zeskalować, przynajmniej ja
bym chciał to zeskalować, żeby te
pluginy WordPressowe. Tak to wygląda na
początku, czyli wiele okienek
potwieranych po prostu z kodeksem, gdzie
kazałem, pisałem mu testuj to, testuj
to, testuj to, aż może coś znajdę, ale
to się no niedobrze skalowało, więc
pierwszym podejściem to było MCP. Kodeks
może działać jako serwer MCP, do którego
będzie się, którego się będzie używało
po prostu jako jako narzędzie. Ale
okazało się, że w tym moim pakiecie Open
AI za 200 nie ma w ogóle API. Już
wcześniej o tym mówiłem, ale zapomniałem
o tym, jak to robiłem. W sensie jak
pisałem ten kod. No i dostałem właśnie
tutaj błąd, że nie ma API. No i okazało
się, że tam w szczegółach faktycznie na
tym pakiecie było napisane, nie ma nie
ma tego API, ale jak kupowałem to za 200
dolarów to nie wiedziałem, że nie ma
tego API. Trzeba było to jakoś obejść. M
okazało się, że kodeeka można odpalać
jako CLI Headless, czyli że w ogóle nie
ma żadnego okienka, tylko po prostu jako
polecenie baszowe. Wyniki zapisać w
JSON, więc łatwo to skryptować w
Pythonie. Oczywiście skrypt pythonowy do
tego został napisany też kodeksem bez
żadnego mojego udziału, tylko napisałem
mu co chcę osiągnąć. Też udało się to
tak napisać jemu, żeby tam było wielu
workerów, czyli żeby można było to
skalować. No i tutaj widzimy odpalenie
na 300 pluginach właśnie po kolei takiej
takiej analizy.
Tak wyglądało to taka można powiedzieć,
no nie jest to architektura, no ale ale
mniej więcej tak wyglądał ten przebieg,
czyli że mamy plugin WordPressowy, on
jest ściągany na nim odpalana jest to
polecenie do testowania. Wynikiem są
dwie rzeczy. jest plik mdroowy, gdzie
jest opisane jak odtworzyć podatność,
jeśli ją znajdzie. I plik w takim
formacie save to jest taki format
dedykowany dla analizy właśnie kodu
źródłowego, gdzie w JSON jest opisane w
jakiej linijce kodu, jaka podatność jest
znaleziona. To pomaga w tym, że potem
ten plik jest łatwo wziąć, załadować do
kolejnej sesji i powiedzieć mu tutaj
masz opisaną podatność w jakich
linijkach i tak dalej. I spróbujemy
odtworzyć. Tak właśnie robiłem, że
automatyzowałem szukanie podatności, a
potem już bardziej ręcznie stawiałem na
dokerze WordPressa z danym pluginem
zainstalowanym i już w takiej sesji
interaktywnej z GUI mówiłem mu, że weź
ten plik z opisem podatności w tym
formacie save i spróbuj stworzyć POCA,
żeby pokazać mi, że to, że to działa.
>> Ja z kolei po przeanalizowaniu
możliwości, których miałem, czyli nie
mogłem wysyłać danych do chmury, lokalne
modele się w ogóle nie sprawdzały.
Wybrałem to rozwiązanie orangeowe, czyli
dajno tu. Tylko jest ten problem, że nie
ma API. jest rozwiązanie tylko w
przeglądarce dostępne. No ale jest taka
stara zasada, że wszystko może być API,
jeżeli tylko bardzo chcemy. Więc ja
sobie to skryptowałem w Pythonie,
skrapowałem sobie tą stronę, wysyłałem
do niej polecenia, odbierałem je i
napisałem sobie taki właśnie prosty
klient terminalowy. Tutaj widać, że
działa. Pytam go ile to jest 2 + 2 x 2.
On mi odpowiada i potem zwraca ID
konwersacji, żebym mógł się na nie, na
tą konwersację potem powoływać. Tu go
proszę, żeby mi przypomniał o czym
ostatnio rozmawialiśmy i on dokładnie to
cytuje. Nie ma też MCP,
ale wystarczy mu powiedzieć, że żeby
było MCP, on jest grzeczny i się słucha.
No i dostawałem odpowiedzi już w tym
formacie, w którym mogłem używać tego
razem z narzędziami. Zacząłem sobie
skanować te te aplikacje orangeowe z
z jednego z hostingów, który mamy i na
50 przeskanowanych aplikacji znalazło
jedno RC i jednego XSSa. Ten XS to nic
specjalnego w jakiejś skórce z
WordPressa,
ale ten RC był dość ciekawy, a głównie
ze względu na sposób, w jaki on je
znalazł, bo ja go przekonałem, że
testujemy środowisko testowe, może
wykonywać payload ofensywne, więc on
uznał, że dobrym pomysłem jest zrobienie
RMF, tak? Czyli usunął wszystkie pliki z
tego katalogu, a potem jeszcze
radośnieował, że zweryfikował verified,
że wszystko się udało. Yyy, podatne sama
w sobie też była całkiem ciekawa, bo tam
był konwerter wideo i w żaden sposób nie
walidował nazwy pliku, który był gdzieś
zahostowany. Wystarczyło zuploadować
plik o spreparowanej nazwie i to się
ładnie wykonywało.
>> No a u mnie się mieliły te pluginy WPSa.
Działały sobie działały i znalazły
pierwszą podatność. Byłem mega
zaskoczony, że udało się tak szybko coś
znaleźć, czego wcześniej nigdzie nikt
nie znalazł, bo to nie była podatność,
którą kazet gdziekolwiek czy ktoś inny
gdziekolwiek opisał. Hmm, w takim
pluginie WPKego. Yyy, no gadałem właśnie
z kazetą, mówi, że no faktycznie tam
kiedyś było dużo różnych podatności, tej
jeszcze nie widziałem, więc coś
ciekawego. Zapytałem się kazetę jak on
to zgłasza w ogóle te podatności i on mi
powiedział, że jest y są tacy
pośrednicy, bo autorów podatności,
autorów tych pluginów jest wielu, więc
ciężko z nimi gadać bezpośrednio, ale są
CNA, które po prostu pośniczą w
zgłaszaniu i do tego płacą bunty za
pluginy wybrane. Ja byłem taki: "Wow, no
to mam automatyczne agenty, które
szukają podatności. Coś już znalazłem,
za chwilę będę na pewno bogaty, więc
[śmiech] oczywiście wskoczyłem
wskoczyłem wyżej na tej mojej
sinusoidzie. No i wysłałem to zgłoszenie
przez przez WFa, ale niestety dostałem
odpowiedź, że to jest duplikat". Y,
znaczy faktycznie nie była ta podśłana.
Yyy, nie było na to CVE, najnowsza
wersja była podatna, ale ktoś inny to
już kiedyś zgłosił i po prostu ten
dostawca tego pluginu gdzieś już go
opuścił i dalej nie rozwija, więc po
prostu tak sobie wisi z podatną wersją,
ale nadal był w stanie znaleźć
podatność, która nigdzie nie była
pisana, ani nigdzie na nią nie było
exploita. No troszeczkę zjechałem, ale
nadal było było fajnie.
A skandal trwały. To trochę tam się
mieliło. Jednak te code basey pluginów
czasami są duże i się okazało, że
znalazłem też coś za co dostałem banty.
Wysłałem zgłoszenie w odpowiedzi
dostałem informację, że faktycznie
zaliczają to jest 100 dolarów po kilku
dniach, kolejne 48 dolarów po kilku
dniach, kolejne 132 $arów. Przypominam,
że to są rzeczy, które są publicznie
dostępne i mnóstwo ludzi je testuje. To
są otwarte back bounty, gdzie mnóstwo
ludzi testuje i ręcznie, i automatami i
lmami, więc byłem taki mega zaskoczony,
bo widzieliście tą prezentację jak ten
rozwój wyglądał i to nie było nic
zaawansowanego, nic wymyślnego,
ani żadna szczególnie magia, tylko
raczej po prostu walenie młotkiem, żeby
coś się udało fajnego pokazać na
prezentacji i się okazało, że coś się
udało znaleźć, ale skany nadal trwały.
Ostatecznie przeanalizowałem 860
pluginów w różny sposób. Bo to nie jest
tak, że on to sobie leciało cały czas i
ja tylko patrzyłem i zbierałem owoce z
tego. Oczywiście tam modyfikowałem na
bieżąco te prompty, ulepszałem,
zmieniałem trochę kod tego Pythona,
testowałem co nie działa, w jaki sposób
weryfikować i tak dalej. I znalazło na
koniec 87 podatności w pluginach
WordPressa. Nie miałem czasu, żeby
wszystkich przejrzeć, więc pewnie
jeszcze tam jest dużo zodów. Tak na oko
oceniam, że te 20% to są false positivy,
bo zdarzyły mi się takie takie
przypadki.
17 zgłosiłem, 17 się udało mi tak
zaprodukować, że mają poca kod w
Pythonie, który pokazuje, że ta
podatność istnieje
i po jednym z takich zgłoszeń dostałem
taką wiadomość,
że
podatność, którą zgłosiłem załapała się
nagrodę 4270 doarów. Yyy, wtedy
wyskoczyłem tak wysoko. [śmiech]
>> Ja jakbym wiedział, to też bym testował
WordPressy, a nie aplikacje orangeowe.
[śmiech]
[wciągnięcie powietrza]
I to był chyba zupełny przypadek. Znaczy
ja do tej pory nie jestem w stanie tego
odtworzyć. Znaczy mam tą podatną wersję
pluginu, daję te same prompty z tym
samym modelem. Y już odpalałem to
kilkadziesiąt razy i on mi nie znajduje
tej podatności. W sensie jak on to w
nocy znalazło jak on w nocy jak się te
gwiazdy ułożyły, że znalazł wtedy to ece
i nikt tego nie znalazł i to był plugin
100 000 instalacji. Nie mam pojęcia, nie
wiem jak to działa, ale zadziałało.
I tak dużo też podatności w innych
pluginach. 600 000, 500 000 instalacji,
100 000 instalacji. Są już CVKi, które
czekają w kolejce, nie są jeszcze
publikowane. Jest jedna opublikowana, o
której wam mogę dzisiaj powiedzieć. Yyy,
to jest taki plugin wallcard e-commerce,
nieaki szczególnie yyy ciekawy, ale
podatność była bardzo prosta.
Yyy znalazł yyy po 10 minutach, że y
jeden z end pointów yyy na yyy API
pozwalał przy ustawieniu flagi USCS
Export na 1 zwracał cały konflikt tego
pluginu łącznie na przykład z sekretami
PayPala.
To jest jakby no bardzo proste, ale
okazuje się, że tysiące ludzi, którzy
wcześniej to trzepali ręcznie,
automatycznie tego nie znaleźli. Yyy, a
jednak LM gdzieś był w stanie sobie tak
kontekst tego wyłapać, że to mogą być
tutaj dane yyy dane wrażliwe, jak
właśnie te sekrety PayPala. Yyy to
znalazł, bo co ciekawe, on mi też potem
pomagał w zgłoszeniu pisać i w
zgłoszenie był w stanie właśnie
dokładnie pisać scenariusz czemu to jest
wraźliwe, czemu to jest szkodliwe i co
tam się może znaleźć. Y, bo na przykład
ja w domyślnej konfiguracji tego plugin
tam nie miałem w ogóle PayPala
skonfigurowanego, tylko on mi
powiedział, że jeśli ktoś by
skonfigurował PayPala i dodał tam sekret
PayPala, to w ten sposób może ten sekret
PayPala wyciągnąć. Yyy, więc cały taki
łańcuch rozmowania jak doprowadzić do
tej do tej podatności. Yyy, no i ile by
to kosztowało wszystko, gdybym używał
tylko API? To co mówiłem na początku, to
jednak była dobra decyzja te 200 $arów,
bo gdybym użył API, to bym wydał prawie
4000 $ar na samo API po takiej cenie za
tokeny, bo zapisywałem każde zapytanie
ile kosztowało tokenów, przeliczyłem to
i to by kosztowało prawie 4000 $arów,
ale kosztowało to 200,
więc jednak ten deal był był niezły,
mimo że nie było API w nim.
Ja żadnego backbantu nie dostałem, ale
za to dostałem nowy zakres obowiązków
[aplauz]
i teraz wszystkie aplikacje w Orangeu
niebawem jak jak zrobię tak będą
testowane llmami zanim trafią na
produkcję.
Jedn
>> No i co co dalej? Jakby nie jesteśmy
nadal ekspertami, żeby mówić do końca co
dalej, ale na pewno z tytuświadczeń
wynika to, że LLMy mogą być takim
kompanem, partnerem w procesie
testowania aplikacji. One nie znajdą
wszystkiego, szczególnie dlatego, że
halucynują i nie można im ufać, że
powiemy, że on powie, że jest bezpieczny
kod i że jest bezpieczny kod, bo nie,
ale potrafią często znaleźć ciekawe
rzeczy, których ludzie nie są w stanie
albo ludzie pominęli, więc praktycznie
żadnym kosztem można soie dodać takiego
kompana, który będzie też dodatkowo
patrzył i testował aplikacje. No i z
mojej strony jeszcze takie
przesłuchanie, żeby faktycznie zacząć
zacząć tego używać. Znaczy ja mam bardzo
poczucie, że my jako branża za mało
robimy w tym obszarze, nie w obszarze
bezpieczeństwa AI, ale w obszarze
właśnie użycia AI, bo na przykład
analiza logów, analiza malwareu,
jakieś na przykład widziałem fajną
prezentację, ktoś pokazywał, gdzie
screenshoty ze steelerów analizował
masowo, gdzie ich były tysiące i
próbował analizować, czy to jest
komputer przestępcy, czy nie na
podstawie ikonek na pulpicie. yyy no i
robić to yyy skryptować to wszystko,
ocować screenshoty, skryptować to byłoby
ciężko. Lami to było kilka linijek.
Minus jest taki, że jeśli mamy rzeczy
wrażliwe wewnętrzne, no one nie mogą
trafiać do cloua. Yyy, więc wtedy musimy
używać od premisowych modeli, które są
często słabsze albo duże mają y
wymagania zasobów.
>> Dziękujemy wam bardzo za uwagę.
>> [aplauz]
>> Zapraszamy do
Zapraszamy do ocenienia nas na eventory
i słuchamy. Jeżeli są jakieś pytania, to
postaramy się odpowiedzieć. Yeah.
More transcripts
Explore other videos transcribed with YouTLDR.

Katabolisme dan Anabolisme - BIOLOGI XII SMA
Indah Rahmawati · Indonesian

Por que os homens DEVEM evitar mães solteiras (ninguém diz isso em voz alta)
Socratic Psyche · English

ORAÇÃO DA MANHÃ DE GRATIDÃO 🙏 Obrigado Senhor por Tudo que o Senhor Fez
Na Presença de Jesus · Portuguese (Portugal, Brazil)

كتاب الصلاة من بلوغ المرام لفضيلة الشيخ ابن عثيمين 32
قناة الشيخ محمد ابن عثيمين الرسمية · English

Donald Trump brutally humiliates CNN’s Kaitlan Collins during fiery address
Sky News Australia · English

Hakikat Ilmu Sains dan Metode Ilmiah (Kelas 7 SMP)
Heryanah Ana · Indonesian

Perubahan Sosial Zaman Dulu dan Zaman Sekarang
Im Mrwa · Indonesian

MATERI - SIMPLE PAST TENSE
VK's Project · Indonesian

Sejarah Awal Lahirnya Sosiologi
Spasi TV · Indonesian

Bahasa Arab Kelas XI Semester 1 | Bab 1 Qiro'ah Pusat Perbelanjaan
Farobiy · Indonesian

Asking Billionaires How They Got Rich! (Beverly Hills)
School of Hard Knocks · English

ruangbelajar - Sosiologi XII SMA - Perubahan Sosial
Ruangguru Bimbel Terbesar No. 1 di Indonesia! · English
Get the TLDR of any YouTube video
Transcribe, summarize, and repurpose videos in 125+ languages — free, no signup required.