log.070 Hackujemy Kubusia phpinfo na WP - jak zgrać audiobooki za darmo ze Storytel na mp3 ChatGPT
HTML-код
- Опубликовано: 6 сен 2024
- TLDR; 6:16
Audiobooki dla dzieci to super sprawa na długie podróże lub deszczowy wieczór. Można znaleźć je na wielu platformach streamingowych jak Spotfiy, Empik Go, Audioteka, Storytel, Legimi. Czasmi mamy możliwość pobrania utworu offline, ale bez możliwości zapisu do mp3 w celu przegrania kartę SD / pendrive USB w celu odtwarzania na głośniku przenośny JBL bez bluetooth i telefonu. Do tego DRMy itp.
Od 2019 roku soki Kubuś (marka Maspex) wraz ze Storytel udostępnia na swojej stronie za darmo audiobooki. Można je słuchać, ale strona nie pozwala zapisywać
kubus.pl/audio...
W filmie pokażemy jak udało się zgrać wszystkie, aby koleżanka z pracy mogła ich słuchać offline w trakcie wycieczki samochodowej nad morze bez płacenia za transfer w roamingu i drenowania baterii telefonu przez transmisję bluetooth do głośnika.
W trakcie pobierania zrobimy szybki audyt strony kubus.pl, który wypadł niepokojąco. Pierwsza sprawa na plus Wordpress jest w trybia automatycznej aktualizacji podobnie jak pluginy. Natomiast na domyślnym adresie wisi panel administratora
kubus.pl/wp-ad...
Statystycznie w WordPress było wiele podatności panelu administracyjnego i ja albo limituję IP, albo chociaż zmieniam adres z domyślnego.
Druga sprawa brak pluginu do limitowania liczby prób logowania. Można bruteforcem męczyć ten portal całymi tygodniami.
wordpress.org/...
Najlepsze natomiast to na głównym folderze jest plik phpinfo jak w podręczniku. Dzięki niemu dowiadujemy się jaką wersję Apache 2.4.4 z 2019 jest uruchomiona na Ubuntu PHP 8.2, foldery z basepath itp. Takie znaleziska sugerują, że strona nigdy nie była poddana nawet powierzchniowym testom bezpieczeństwa i może ukrywać większe problemy.
#kubus #maspex #wordpress #phpinfo #php #security #audiobook #storytel #python #chatgpt #scrapping
no nareszcie odcinek, już myślałem że zdechnę w robocie z nudów,
dzisiaj się urodził temat na nowy odcinek dot problemów z Windowsem :D
Szczęśliwi użytkownicy Linuxów i MacOS bo tam Crowdstrike nie wysypał systemów. Od razu widać kto siedzi na Windzie jak Ryanair, Santander, PKO BP... Uroki chmury i automatycznych aktualizacji, gdzie w PaaS nie mamy żadnego wpływu na to co robi dostawca usługi.
@@patodeweloperka Ale od lat jest moda na chmurkę bo jest sexi xD Zawsze wiedziałem że tak to sie będzie kończyć a za pare lat dowiemy sie że M$ i USA grzebały sobie radośnie w danych klientów na zasobach. :D
szczerze wielu rzeczy z tego nie wiedzialem i jestem wdzieczny za pokazanie czesci zagrozen jakie trzeba uwzglednij w budowaniu strony
Mogłeś poprosić czata aby sprawdzał czy pobierana jest MP3 i tylko wtedy zapisywał.
Teraz siedzę, badam stronę i czekam żeby zobaczyć jak dużo czasu musi minąć zanim ktoś z działu security zorientuje się że coś jest ewidentnie nie trak
coś ewidentnie nie tak ? COOO?!
chyba już po ptakach, zrobili przekierowania
Nie mają takiego działu xddd
@@DimJbjvmyślę że to nie oni zrobili przekierowania xd
@@DimJbjv /phpmyadmin póki co dalej nie poprawili
4:16 Co do gpt że na początku się rozpisuje to pomaga to mu się "skupić" na zadaniu, Najpierw tworzy sobie plan i potem produkuje znacznie lepszy kod
Raczej przystępność dla użytkownika, żeby zobaczył jakie gpt parametry odczytał z tekstu.
Dodatkowo przy okazji ja sobie to często weryfikuję czy on dobrze zrozumiał mój prompt
Nowoczesność 🗣️🔥🍷🗿
hej, kubuś, dobra robota z poprawianiem tego, ale w nagłówkach odpowiedzi wciąż podajecie nagłówek serwer i wersję apacha(co prawda juz aktualna)
Niestety większość devów którzy robią Wordpressy robią słaby kod. A jak się jest devem php i chcesz iść dalej jako jakiś backend w symfony to zazwyczaj jak piszesz Wordpress Developer to wygląda czasem jak stygmat i jesteś z miejsca odrzucany. I ja to rozumiem bo czasem sprzątam po takich gagatkach :(
Już naprawili wszystkie podane przez ciebie linki, apache jedynie nadal chyba nie zaktualizowali...
teraz chatgpt pisze więcej bo jest teraz dostepna wersja probna gpt-4o dla każdego. Kilka promptów na x godzin. A ta wersja ma tendencje do rozpisywania się bardzo. Możesz też napisać żeby nie pisał wyjaśnienia to skupi się bardziej na pisaniu lepszego kodu.
Ja tam lubie wyjaśnienia odrazu ucze sie co z czego wynika :)
Im więcej dobrego kontekstu llm sobie stworzy tym lepszy kod napisze
jeszcze mozna multithreading do tego skryptu dodac, zeby szybciej szlo
mozna mozna ale po co to komu potrzebne
@@ВТС zeby nie czekac 10 lat
Żeby z ddosowac biednego kubusia. :( Pewnie i tak stoi na jednej VMce
Geniusz!
naprawili już chyba
Szefowa top Janusz
Pamiętam jak lata temu można było dostać się do filmów na cda i je pobrać przez kod źródłowy (nie znam się na tym aż tak może źle to nazwałem), ale to było dawno dawno temu
Najciekawsza to jest dla mnie Pani dyrektor co chce żeby jej nielegalnie audiobooki ściągać ze strony zamiast sobie kupić Spotify premium i ściągnąć do offline czy też zestaw bajek dla dzieci w mp3 kupić za kilkanaście złotych.
Na przykład jest zestaw "Posluchajki._365_bajek_na_dobranoc" i można go kupić za 14,46 w mp3 na alledrogo ale lepiej pożałować i niech pracownik zrobi "za darmo" :D
Fajny film dzięki za kolejny odcinek i miłego dnia.
Czemu programy piszesz i odpalasz w jakimś VM a nie np vsc czy specjalnym programie pod Py
bo chce byc hakerem
@@krupnik2150 nikt nie pytał
@@krupnik2150 Ale jaką poradę ? Nikt tu nie pytał o porady ani nie potrzebował ich
@@krupnik2150 XD to po co piszesz. Sam siebie wyjaśniasz. Popisać się chciałeś że wyczytałeś coś w Wikipedii?
Bo pycharm jest na innym komputerze 😂
3:10 nie łatwiej było użyć curla/wget?
Można nawet one linerem było to pociągnąć:
for ID in {1..3000}; do wget -O "$ID.mp3" "example.com/?play.php?id=$ID"; done
Ucząc się robić proste rzeczy w zaawansowany sposób dużo łatwiej potem jest coś bardziej skomplikowanego rozwiązać, jakby już sam wget nie podołał :)
Co ciekawe już zabezpieczyli WP i php
5:59 ciekawe czy atrybut "data-id" to faktyczne id, które wystarczyło podać playerowi, aby pobrał plik. Jeżeli to by działało, wystarczyłoby regexem ściągnąć listę tych id i byś nie musiał strzelać na ślepo
Prawilnie byłoby scrapować każdą stronę z audiobookiem do wyciągania ID tak jak piszesz.
Łatwiej zrobić range 0,9999 bez ani jednego regexpa z htmla jak tam nie ma żadnych hashy itp😇
latwiej to byloby uzyc konsoli do wyciagniecia linkow xd
Dobra Lester kiedy ten napad?
ciekawe czy path traversial działa....
Burp suite i wszystko jasne :)
Zastanwiają mnie dwie rzeczy jako programiste
1.Czemu masz takie dziwne środowisko do pythona (ja robię w c#) ?
2.Czemu ta strona ma takie słabe zabezpieczenia? Ja sam zrobiłem dla kolegi stronę i była to moja jedyna przygoda z wordpressem a i tak nie ma tych wszystkich baboli co ta kubusia
1. To nie jest środowisko, to jest jakiś Linuxowy edytor tekstu
2. Może po taniości zlecili tą stronę i zrobili na wyjebaniu
Zrobili przekierowanie do storytell. ;) Już nie działa ten sposób.
Nie uwazam ze dostanie sie do phpinfo, zeby zobaczyc wersje serwera http ktory hostuje stronę jest takie konieczne, jak można to samo zrobić z nmapem
nmap service i version detection zwróci takie dane dla serwera HTTP o ile nieogarnięty admin zostawi włączone headery wędrujące z każdą odpowiedzią serwera:
Server: Apache/2.4.41 (Ubuntu)
X-Powered-By: PHP/7.4.3
Dlatego dobrą praktyką jest ukrywanie ich, ponieważ dysponując dokładną wersją z łatwością można dopasować podatności w bazie CVE do nieaktualizowanych środowisk.
A jeśli mamy jeszcze cloudflare po środku, to z automatu podmieniany jest header na "Server: Cloudflare".
Cześć chciałbym nauczyć się trochę w programowanie. Na codzień jestem żołnierzem i pomyślałem żeby możę pójść w cyber security ,ale się zastanawiam czy to ma sens ,bo odnoszę wrażenie ,że to jedna z najtrudniejszych gałęzi dla ludzi co zjadają na tym zęby od małolata. W sumie to nawet pisać w Javie bym chciał się nauczyć. Generalnie przychodząc do sedna chciałbym się ciebie zapytać czy znasz może jakieś sensowne szkolenia z których coś człowiek wyciągnie a nie zabuli kilkanaście tysięcy za coś co znajdzie na Yt dajmy na to? Czy nakierowałbyś mnie delikatnie może czego warto się teraz uczyć?
Cybersecurity to poprawianie po całym dziale IT (programiści, infrastruktura, sieci), więc trzeba opanować kilka specjalności i jeszcze znaleźć błędy poprzedników. Javę odradzam, ponieważ jest bardzo trudnym językiem po opanowaniu podstaw. Najbardziej popularne teraz są Javascript i Python ponieważ są proste. Stawki dla juniorów to 5-8 tys brutto i trzeba opłacić z tego kwaterunek, wyżywienie... Juniorzy z reguły nie mają pracy zdalnej, a biura głównie w wielkich miastach, co trzeba też mieć na uwadze przy realokacji jak za wynajem mieszkania trzeba wyłożyć 2 tys najmniej miesięcznie. Obecnie rynek pracy w IT jest chory, firmy zwolniły na świecie setki tysięcy ludzi po gorączce złota z 2021. Koniecznie trzeba znać język angielski, ponieważ wszelka dokumentacja jest w tym języku. Odradzam kursy płatne, bo wiele z tego to naganiacze i sprzedawcy marzeń o wysokich zarobkach co ma garstka specjalistów. Najlepiej uczyć się rozwiązując zagadki z tego leetcode.com/problems/two-sum/description/ , po prawej można wybrać język programowania, na youtube są tutoriale i dokładnie te same pytania używane są przy rekrutacjach. Jeśli mogę coś zaproponować, to może warto poszukać w Regionalnych Centrach Informatyki ofert, o ile nie są to etaty cywilne i nie traci się przywilejów. IT to nie tylko przereklamowane programowanie, ale też support, projekty, architektura, sieci... Na drugim roku w WAT dostaje się już pensję żołnierza zawodowego 6000 zł, a można wbić się na sierżanta plus wszystkie dodatki to wcale nie wyjdzie mniej niż początki IT przez pierwsze 4 lata najmniej.
Dziękuje ci serdecznie za tak wyczerpującą odpowiedź. Pozdrawiam @@patodeweloperka
zajebioza
wp-admin juz nie dziala
sentosi senseju :D
A to nie jest tak ze Ubuntu z opóźnieniem wypuszcza aktualizacje i żeby najnowsza wersje apache była trzeba ręcznie dodać repo apache? hmmm
Ubuntu 20.04 Focal Fossa:
- PHP 7.4 (to Kubuś podniósł do 8.2)
- Apache 2.4.41 i nowszych wersji od Canoncial już nie było dla tego releasa.
Są prywatne repa jak ppa:ondrej/apache2, ale to nie jest oficjalna paczka.
Teoretycznie EOL jest w kwietniu 2025, a strona dla dzieci, ale może skończyć się podobnie ruclips.net/video/sCLuYRLNOd0/видео.html
@@patodeweloperka Tylko jest jeszcze jedna kwestia, ubuntu paczuje konkretnie te wersje, jak sobie na launchpadzie grzebniesz po nazwie paczki i repo to będziesz miał całą historię patchy. Ubuntu 20.04 jest jeszcze na standardowym LTSie więc spokojnie wszelkiej maści security patche tam wjeżdzają (o ile jest autoupdate albo admin aktualizuje)
@@patodeweloperka Nie znam sie, a to nie jest tak że wordpress podczas aktualizacji powinien też podnosić Apache? Rozumem że teraz aby podnieś ta wersje Apache trzeba dodać zewneczne repo do ubuncika?
@@przemyslawnieznalski697 W Ubuntu jest domyślny użytkownik www-data, który ma uprawnienia tylko do kilku folderów. To jest na plus, bo nie ma możliwości zmieniać paczek systemowych i w razie problemów atakujący poza /var/www/html/ nie powinien wyjść. Wordpress patchuje się podmieniając swoje pliki php w folderze roboczym.
@@patodeweloperka Ok, ale jeśli jako root wykonujesz get update && upgrade -y, to wszystko powinno zostać pobrane i zaktualizowane.
Właśnie u siebie odkryłem, że mimo posiadania w cronie zadania get update && upgrade, które wykonuje się codziennie, mam taką samą wersję jak ty na tym filmie.
Z tego powodu zacząłem dochodzić, dlaczego tak się dzieje.
6:50
nie lepiej zainstalować audacity i ustawić opcję nagrywania to co słyszę puścić play i rec w audacity i tam się nagra
każdy orze jak może ;)
Już po kubusiuu
Kubuś został zhakowany
już wyłaczyli
Niestety Kubuś już nie działa, na szczęście zdążyłem swoim skryptem pobrać troszkę opowiadań teraz pytanie co z nimi zrobię.
Mam podobnie, syndrom chomika to prawdziwa choroba xD mam domową bibliotekę taśmową LTO i trzymam gigantyczne ilości danych których pewnie nie użyję w ciągu swojego życia 😂
oczywiście, że działa.
@@dylojestemm napisałem to 12 dni temu stary
@@CrawdadSoftware001 wiem, ale napisalem jedynie, ze wciąż to działa, więcej nie wiem czemu tobie nie działalo :D
@@dylojestemm ponieważ 12 dni temu dużo ludzi się rzuciło na stronę i zniknęła, wywalał błąd, dlatego napisałem że mi nie działało
Co ci zrobil ten kubus?
To sprawa personalna 🍷🗿
Wyprawa Jasia w PHP scrap scrap
„Pseudohakjerzy”
1. Sprawdzić można content-type, a nie koniecznie rozmiarze
2. To, że jest Apache 2.4.41 niewiele mówi. Jak widzisz, jest tam Ubuntu 20.04 LTS, co sam pokazujesz. Zapytaj może tego GPT co to oznacza, zamiast chrzanić farmazony, a nie zgaduj zgadula :)
3. "Potencjalny atakujący wie".... g. wie. Security through obscurity panie. Poza tym patrz pkt 2.
4. Jak zawuażyłeś (albo i nie) - PHP 8.2.10 się nie doczepiłeś. A to nie jest canonicalowy PHP, prawdopodbnie pochodzi z innego repo. Jednym z popularnijejszych jest ondreja, który jednak ma już dostępne nowe wydanie 8.2, i to jest potencjalny problem. Może jednka w jakimś repo 8.2.10 jest nadal łatany.
Mega szkoda, że tak świetnie pokazany przykład Chatem GPT został spartolony przez "zgaduj zgadule" w sprawie softu na którym stoi. Parzcież mogłeś pociągnąć pytając dalej choćby GPT albo zaczynając ręcznie szukać dalej, niż pierwszego lepszego wyniku w Google, który swoją drogą też ostatnio podbija strony z bzdurami z porad szeroko pojętego IT :)
I wiesz co jest najgorsze? Że masz inne, ciekawe filmy, które mógłbym obejrzeć. Ale są to tematy, na które mam małe pojęcie. Nie wiem, czy też nie wciskasz tam farmazonów takich jak tutaj. A mnie średnio obchodzi jakość filmów, a sama merytoryka.
w 1 min mam otwartego plika audio w przeglądarce, co ten film pokazuje ? niesamowicie zdolny jesteś! LOL! 0:44 OUT!
EDIT
503 Service Temporarily Unavailable
jutro powtórka z rozgrywki?
i ping to atak na server?
Może warto obejrzeć całość, a nie pierwsze 30 sekund jak w shortach. Proponuję 9:30, chyba że to nowy standard u profesjonalistów zostawiać u klienta phpinfo.
Co ten film pokazuje:
- jak zgrać wszystkie audiobooki z Kubusia udostępnione przez Storytel, to dla początkujących
- na hostingu php nie zostawiamy phpinfo i byle testy security powinny to znaleźć
- wp-admin na domyślnej ścieżce i bez login attempt plugina to zaproszenie na brute force
- podstawka linuxa z 2019 z apache co ma kilka CVE to proszenie się o kłopoty
Skoro tak duża firma jak Maspex od 2019 roku nie złapała złych praktyk w swoim serwisie, to po to jest ten film, żeby inni nie popełniali podobnych błędów. Uczymy się dokumentując i taki jest zamysł edukacyjny, żeby poprawiać jakość IT w Polsce.
@@patodeweloperka jestem nobem, wchodze w cyber security.. takie filmiki w praniu sa bardzo pomocne a to ze ktos nie ma wyobrazni to juz nie wina kanalu
@@patodeweloperka króciutko z takimi delikwentami
"Hakujemy" TT
i "hacker" nawet nie wiem, że chatGPT zna też jego język xD
Po angielsku chatgpt lepiej sobie radzi. Jest to podstawowa wiedza
Wchodze na kubusia, myśle dobra zerkne po filmiku co tam jest i 503 :D
Albo położyli i naprawiają
Ale stawialbym raczej że jakiś.script kiddie puścił dosera z githuba na wp-crona czy inny zasób tego typu i położył lub jeżeli tam był pingback na xmlrpc
korzystasz może z virutalboxa?
Też. Virtualbox jest problematyczny do zastosowań komercyjnych i trzeba płacić Oracle za addony jak vRDP, USB, PXE. Do ewaluacji jest super i instalka jest też pod Linuxa. Tyczasem HyperV co prawda jest tylko po windę, ale za darmo. Do zabawy w wirtualizację prym wiedzie teraz www.proxmox.com po akcji Broadcomu z wycięciem darmowej wersji VMWare ESX.
GPT nie jest potrzebne, curl -r to umie. Dodatkowo, ciekawe przełączniki: --no-progress-meter, --remote-name --remote-header-name i --output-dir.
remote-name nie zadziała prawidłowo, bo każdy zapisany plik nadpisze tą samą nazwę play.php, ponieważ atrybut GET się tylko kręci. Na szybko to tak zabangla one liner:
for (( ID=1900; ID
Tak oglądałem zawsze cda bez reklam i sztucznego zacinania by kupić premium 😂
myślałem, że to "zacinanie" to przez mój słaby internet z telefonu xd tyle lat w błędzie żyłem (ale podejrzewałem coś, że właśnie coś cda kombinuje z tym sztucznym zacinaniem