Jak pisaliśmy na stronie „O projekcie” na stronie AIndrzeja, czyli https://nietrywialny.pl, a AIndrzej jest zbiorem różnych technologii typu smart, AI, i ML, które ze sobą współpracują. A ten wpis mam bardziej wytłumaczyć w jaki sposób są one ze sobą spięte, więc bardziej będziemy się skupiać na technicznych aspektach, niż nazwach firm czy rozwiązań, które zastosowaliśmy. A najważniejsze jest to, że staramy się tak, żeby ceny stron z AI podnosiły całkowity kosztu projektu, bo wierzymy, że nie tylko duże podmioty powinny korzystać z dobrodziejstw sztucznej inteligencji.
Pisanie artykułów i postów
AIndrzej oferuje dwa rodzaje generowania dowolnego wpisu. Pierwszy to klasyczny chat jako panel wysuwany z boku i zintegrowany ze stroną, lub bezpośrednio w wordpressowym Gutenbergie. Ten drugi rodzaj jest trochę mniej intuicyjny, więc klient będzie mógł wybrać wygodną dla siebie opcję. W darmowej wersji, wystarczającej dla większości blogerów, AIndrzej dysponuje ilością 7500 znaków na miesiąc i jest ona oparta o azjatyckiego startupa. Oczywiście przy bardziej skomplikowanych projektach istnieje możliwość podpięcia pod rozwiązania ChatGPT w wersji komercyjnej lub jego odpowiednika, który będzie miał wsparcie dla WordPressa lub Woocommerca i jednocześnie wysoki limit (lub jego brak), ale może to generować cykliczne koszty. Dodatkowo oba sposoby dają możliwość korzystania z odpowiednich szablonów (opis firmy, mail, sugestie, etc) lub ustawień, które pomogą tworzyć treści zgodne ze specyfikacją promptu.
Generowanie i optymalizacja grafik
AIndrzej w darmowej wersji oferuje generowanie nieskończonej ilości grafik, ale pozwala jedynie skorzystać z 3 wybranych grafik dziennie. Pracujemy nad tym, żeby zwiększyć ten limit. W zasadzie rola człowieka ogranicza się do wpisania prompta, czyli opisu tego, czego oczekuje, i wskazania wybranej grafiki. Potem dzieje się pełna automatyka oparta o AI. Wskazane zdjęcie po wygenerowaniu jest wysyłane na specjalny serwer oparty o ML, który optymalizuje obraz pod kątem „lekkości”, utrzymując dobrą grafikę, i robi specjalne kopie w nowoczesnych formatach, takich jak WEBP i AVIF. Docelowo wrzuca zoptymalizowaną grafikę na chmurę wspieraną przez 400 serwerów CDN (pierwsza sieć CDN, która odciąża Twój serwer) i podmienia adresy grafik na Twojej stronie, żeby wyświetlały się bezpośrednio z chmury. Inteligentna chmura dodatkowo rozpoznaje urządzenie, z którego korzystasz, więc może wyświetlić grafikę w dobrze zoptymalizowanym JPG lub – dla najnowszych przeglądarek – w WEBP i AVIF. Zdjęcia możesz trzymać jednocześnie w chmurze i u siebie na serwerze lub tylko w chmurze (chmura ma własny backup), żeby rozmiar zajmowanego miejsca na serwerze nie rósł, co pozwala na trzymanie strony na całkiem małym i tanim serwerze. Chmura w wersji darmowej oferuje 20 tysięcy wejść na stronę, gdzie są docelowo umieszczone zdjęcia, więc jest to całkiem sporo. Same prompty od grafiki można generować bezpośrednio w Gutenbergu lub bibliotece z mediami.
Podstawowe SEO
AIndrzej dba samodzielenie o SEO on site, a najlepszym dowodem niech będzie 100% wynik z narzędzia Lighthouse dostępnego na stronie https://pagespeed.web.dev. Jednocześnie monitorujemy AIndrzeja innymi narzędzami do SEO i wyniki też są bardzo dobre. AIndrzej sam generuje meta description, samodzielnie tworzy alternatywne teksty, dba o schema, sitemap, breadcrump i cały szereg innych rzeczy (w tym lekkie grafiki), które pozwalają na optymalne wykorzystanie wszystkich obszarów na stronie do poprawnej optymalizacji zindeksowania przez pająki. Żeby być uczciwym nie korzystamy tutaj w pełni z AI czy machine learnigu, a bardziej na optymalizacji i automatyzacji, tego co AI już zrobiło czyli z wygenerowanych obrazków i tekstu na którego podstawie są robione wszystkie rzeczy przez AIndrzeja. AIndrzej równierz symuluje przychodzenie robotów indeksujących, żeby jego cache dla nich był zawsze jak najświeższy.
Bezpieczeństwo
Cyberbezpieczeńtwo stron, które robimy to jeden z najważniejszych obszarów, tym bardziej, że tez wpływa bezpośrednio na notowania w wyszukiwarkach i spokojny sen naszych klientów. Dlatego też poniżej w miarę szczegółowy opis tego jak AIndrzej broni się przed różnymi zagrożeniami i w jaki sposób powiadamia właściciela lub administratora strony, żeby ten mógł zweryfikować czy potrzebna jest reakcja człowieka, czy AIndrzej sam sobie poradził. Oczywiście bezpieczeństwo webaplikacji, to bardzo płynny proces, ale od początku istnienia AIndrzej nie potrzebował naszej pomocy, chociaż z załóżenia dmuchamy na zimen i manualnie kontrolujemy cyklicznie logi.
Firewall
AIndrzej korzysta z 4 różnych firewalli, które uzupełniają się nawzajem, a co ciekawe, nie mają większego wpływu na wydajność strony. W różnych momentach testów na stronie https://pagespeed.web.dev wyniki są na poziomie 91-96 pkt dla desktopu i 85-90 dla mobile, co jest całkiem przyzwoitym wynikiem.
Pierwszą z zapór ogniowych jest Cloud WAF od Cloudflare w darmowej wersji, więc oficjalnie nie można powiedzieć, że jest tu pełne wsparcie ML, ale osobiście uważamy, że w jakimś stopniu jest dostępne, choćby ze względu na trening. Tym bardziej, że WAF w tej wersji czasem blokował nam całkiem dziwne zapytania, które nie były zdefiniowane w zasadach. Trzeba też pamiętać, że Cloudflare to nie tylko Cloud WAF; to także sieć CDN-ów oraz narzędzia takie jak ZARAZ lub Cloudflare Apps, które bardzo znacznie podnoszą bezpieczeństwo, jeśli są dobrze wykorzystane, a jednocześnie nie obciążają pierwotnego serwera.
Drugi typ ściany ogniowej, z jakiej korzystamy, to stary i dobry ModSec, który już chyba od 2021 roku ma w różnych projektach wsparcie ML oparte o Core Rules Set, więc „AI” jest tam bardzo dobrze osadzone. Szczerze mówiąc, nie wiemy, czy SEOHOST korzysta z takiego rozwiązania lub samego CRS-a, więc w trakcie pisania tego posta pojawił się pomysł dopytania i uzupełnienia tej części w niedalekiej przyszłości. Tak czy owak, możecie dopytać swojego hostingodawcę.
Trzeci „firewall” to nie taki prawdziwy WAF, tylko zestaw reguł w pliku konfiguracyjnym htaccess, ale w zasadzie pełnią one bardzo dobrze swoją rolę. Docelowo na serwerach klientów „instalujemy” 8G Firewall, który wyszedł spod ręki Perishable Press. Jednak AIndrzej ma swój własny zestaw reguł, które stworzył sam, oczywiście po naszej podpowiedzi, i mają go chronić przed OWASP TOP 10. Instrukcje te zostały przez nas przetestowane i poprawione, więc można półżartem powiedzieć, że htaccess firewall też jest oparty o AI. Oczywiście, całkiem nie rezygnujemy z 8G Firewall, i ciągle jest dostępny w bardziej wrażliwych obszarach AIndrzeja.
Czwarty i ostatni WAF to dodatek w WordPressie, który chroni bezpośrednio CMS. Tutaj nie ma pełnego AI, ale są dwa „inteligentne” obszary. Pierwszy to technologia smart (młodszy brat AI), która została użyta bezpośrednio w firewallu, a drugi to wysyłanie nieznanych zagrożeń do chmury dostawcy wtyczki, dzięki kolejnym aktualizacjom firewall staje się „mądrzejszy”. Co ciekawe, AIndrzej jest tak stworzony, że w razie wykrytego zagrożenia wysyła żądanie blokowania agresora na poziomie Cloud WAF. A jeśli zajdzie konieczność, to wysyła powiadomienie na maila lub jako push na desktop/mobile admina. Próg ataku, po którym trzeba poinformować człowieka, ustawia się na podstawie ilości zablokowanych requestów od atakującego.
Audyty
Pierwszym rodzajem audytu, który jest przeprowadzany, to skanowanie Imunify360, które według oficjalnej dokumentacji jest w pełni oparte o ML, ale jest bezpośrednio wdrażane przez SEOHOST, więc my nie musimy się martwić o nic. Mamy tylko podgląd do podstawowych logów, a samo rozwiązanie działa 24/7 – w sumie można napisać, że pełni rolę piątego firewalla.
Zanim zaczniemy opisywać dokładnie, jakie narzędzia ma wdrożone AIndrzej, warto zauważyć, że żadne z nich nie jest w pełni automatyczne, ponieważ bazujemy na darmowych licencjach. Ale ma to swoje zalety, ponieważ nie obciąża ciągle serwera, a takie testy potrafią swoje potrwać. Druga sprawa jest taka, że mimo braku oficjalnej automatyzacji jest sposób ominięcia tego (bez łamania licencji), ale mimo wszystko wolimy robić to ręcznie i nie produkować dodatkowej pracy.
Drugim rozwiązaniem, ale pierwszym wdrożonym bezpośrednio w AIndrzeju, jest podstawowy skaner malware, który w zasadzie sprawdza sumy kontrolne plików i na tej podstawie wyrokuje, co jest złe. Więc jeśli masz jakieś własne pliki „dopisane” do WordPressa, to na 99% według tego skanera będzie to wirus lub podejrzany plik. Problem takich fałszywie pozytywnych rozwiązuje whitelist.
Trzeci skaner, który sprawdza AIndrzeja, jest już bardziej zaawansowane narzędzie oparte o definicje i heurystykę, a nie o proste sprawdzanie sum kontrolnych. Przed każdym użyciem definicje są aktualizowane z chmury, co poprawia wykrywalność potencjalnych zagrożeń, a według autora tego narzędzia wykrywa ono nawet złośliwy kod poddany obfuskacji. Jedyna wada tego narzędzia to to, że wyniki powinna interpretować bardziej techniczna osoba, która zna się na WP, ale to chyba tak jest z każdym potencjalnym skanerem.
Czwarte rozwiązanie to już pełne AI, które przeprowadza podstawowe pentesty. Oczywiście, one nie zastąpią kreatywności i profesjonalizmu etycznych hackerów, ale AI znalazło faktycznie kilka „dziur”, które potencjalnie mógł wykorzystać włamywacz. Najlepsze w tym wszystkim jest generowany raport w formie PDF, który jest rzeczowy i profesjonalny. Same pentesty według wyliczeń AI mogą trwać nawet do 3 dni, ale u AIndrzeja trwały maksymalnie do 8 godzin, więc z reguły były zlecane na noc. Darmowa licencja pozwala na 12 takich pentestów w roku, więc raz w miesiącu przewiercamy bezpieczeństwo AIndrzeja od A do Z razem z wcześniej opisanymi funkcjonalnościami.
Logi
To jedna z podstawowych rzeczy, jakie trzeba robić w cyberbezpieczeństwie, i AIndrzej dba o to sam. Pierwsze logi, jakie zbiera, to dane z firewalla wbudowanego w WordPress. Drugi rodzaj logów to wszystkie zmiany w plikach, a trzeci to zachowanie użytkowników. Oczywiście dochodzą z tego wyniki skanowania. Na ten moment jest sam AIndrzej z ludzkim opiekunem, więc danych nie jest wiele, a logi są ustawione na maksymalnie 12 miesięcy. W razie potencjalnego włamania powinien być zestaw wszelkich danych, który pozwoli ustalić drogę włamania, załatać dziurę i poprawić bezpieczeństwo.
Spam
Spamerskie komentarze lub wiadomości, często wykorzystywane do black SEO, są zmorą każdego admina, a u nas dba o to w 100% AIndrzej. My w zasadzie siadamy już do cyfrowej musztardy po obiedzie, żeby przejrzeć logi, co spamerzy chcieliby nam wysłać. AIndrzej ma trzy warstwy, które mają odsyłać spammerów do domu. Pierwsza to monitoring botów (to zadanie robi niezależnie 3 z 4 firewalli) na podstawie user-agent, IP, JS challenge, itp. Druga warstwa jest oparta o Turnstile lub reCaptcha v.3.0, która nie wymaga akcji użytkownika, a sprawdza „zachowanie” i wnioskuje, czy ma do czynienia z człowiekiem czy z spamerskim botem. Tutaj można dość swobodnie przydzielać kryteria punktowe, wg których potem AIndrzej ma zatrzymać spamlobuza. Trzecia i ostatnia warstwa to kontrola treści pisanych wiadomości i komentarzy. Tutaj możemy wdrożyć 100% i darmowe AI, jeśli strona jest niekomercyjna. Jeśli strona jest biznesowa, trochę jak AIndrzej, który służy do promocji naszych usług, to za licencję AI trzeba płacić, ale alternatywnie wdrażamy inne smart technologie, które bardzo dobrze uzupełnią dwie pierwsze linie obrony.
Tu warto wspomnieć, że są jeszcze trzy obszary do zagospodarowania w ochronie przed spamem. Obfuskacja adresu mejlowego, ale jeśli prowadzisz biznes i Twój mejl kontaktowy jest na innych stronach np. z ogłoszeniami, to niewiele to pomoże (tu lepiej skupić się na bezpiecznej skrzynce). Druga warstwa to dodanie reguły, jeśli ta sama wiadomość jest wpisywana w krótkich okresach czasu. Do tej pory mieliśmy taką regułę ustawioną tylko w zakresie jednego adresu IP, ale po niedawnym ataku, który wyglądał jak z małego botnetu, na stronę naszego klienta, dodaliśmy do AIndrzeja blokowanie tej samej wiadomości z wielu adresów IP i z różnych user-agentów w krótkim interwale czasowym, bo właśnie takie sztuczki robili spamdranie, żeby oszukać system antyspamowy zainstalowany na atakowanej witrynie. Do tego blokujemy około 100-200 najpopularniejszych adresów IP ze spamerskich domen, z których boty czerpią tymczasowe scammerskie adresy mejlowe.
Uptime
Wiemy, że różni hostingodostawcy podają prawie 100% uptime serwerów i tak samo robi SEOHOST, ale w ich przypadku podpisujemy się pod tym obiemia klawiaturami. Nie mniej AIndrzej jest ustawiony żeby samodzielnie się monitorować przez zewnętrzny serwis, który odpytuje AIndrzeja czy wszystko jest w porzadku. Takie odpytywanie można ustawić w iterwale od 5 do 30 min, tylko trzeba pamiętać o poprawnej konfiguracji firewalla, bo mogą się mnożyć fałszywe alarmy. Tak czy owak przy braku odpowiedzi dostajemy emaila, że AIndrzej się nie odzywa z godziną i data braku reakcji. Podobnie jest, gdy AIndrzej wraca do „żywych” – dostajemy mejla, że wszystko jest ok plus notę czasową. Kontrola uptime’u pomaga dodatkowo monitorować czy strona działa, bo faktycznie hostingodawca mógł się wywiązać, ale strona padła od awarii lub ataku.
Backup w chmurze
W dziedzinie kopii zapasowych AIndrzej wychodzi daleko poza przyjęty standard 3-2-1, ponieważ kopie są robione z pozycji całego serwera, manualnie z konta hostingowego oraz automatycznie do chmury. Dodatkowo AIndrzej ma niezależny backup zdjęć oraz samej bazy danych do drugiej chmury. Tutaj – w chmurach – dodatkowo robimy automatyczne przeglądy backupów pod kątem złośliwego kodu i malware zagnieżdżonego w plikach strony. Jeśli chmura wykryje złośliwą zawartość, odmówi przyjęcia kopii zapasowej, a AIndrzej wyśle do nas stosownego mejla. Sama chmura ewentualnie zablokuje plik, jeśli go przyjęła od AIndrzeja i poinformuje właściciela konta, co pozwoli podjąć dalsze kroki.
Prócz antywirusowej kontroli kopii zapasowej, to dwa razy w roku przeprowadzamy ręcznie poprawność backupów zapisanych w chmurze.
Klucze sprzętowe i 2fa
W AIndrzeju w zasadzie nie musimy pamiętać hasła, ponieważ wszystko ograniczamy do klucza sprzętowego spod marki YubiKey, ale w tym systemie można użyć klucza dowolnej marki. Można śmiało powiedzieć, że AIndrzej jest taki passwordless. AIndrzej ma podpięte dwa klucze, z czego jeden jest zapasowy, a w razie awarii tego rozwiązania można w bardzo prosty sposób przejść na tradycyjne hasło z 2FA (OTP na mejla lub w aplikacji typu authenticator). Nawet gdyby cyberprzestępca postawił identyczną stronę z bardzo podobną domeną, to użycie klucza sprzętowego w zasadzie eliminuje jakikolwiek atak, który wyłudziłby od nas dane na „lewej” stronie. Obecnie pracujemy, aby klienci nie musieli zakupywać kluczy takich jak YubiKey, bo ich kluczem będzie sam smartphone.
Extra
O bezpieczeństwie wdrażanym w AIndrzeju można pisać długo, ponieważ prócz tych wszystkich rozwiązań dodaliśmy masę innych: trójstopniowy dostęp do skryptów administracyjnych i REST-API, niestandardowe katalogi (odseparowujące większość zmasowanych ataków według jednego schematu), wyłączenie wersji oprogramowania, bezpieczne nagłówki, monitoring requestów do bazy danych i błędów PHP, itd. – brakłoby myszki do przewijania. A to nie wszystko, bo w planach mamy jeszcze inteligentne, w pełni zautomatyzowane zewnętrzne monitorowanie samego serwera pod kątem znanych exploitów i podatności.
Plany na 2024
Własny VPS
Gdy AIndrzej nabierze pełnej funkcjonalności jako wirtualny sklepikarz, bo taki jest cel, to planujemy go przenieść na samodzielny VPS, który swoją drogą dostanie kilka pełnoprawnych narzędzi AI, żeby optymalizować pracę AIndrzeja. Obecnie AIndrzej jest na hostingu współdzielonym udostępnionym przez SEOHOST i nie odczuwamy jakichś ograniczeń, ale własny VPS to własny VPS. Mamy zamiar zyskać znacznie na wydajności i optymalizacji w ten sposób, to jest główne zadanie.
Własny serwer newsletter z AI
Obecnie testujemy samodzielne serwery newsletterowe oparte o AI dla naszych klientów, a jako pierwsza taki dostanie strona https://anasky.pl, a zaraz za nią będzie AIndrzej. Wdrożenie serwera nie będzie przekraczać 799 zł, a koszt rocznego utrzymania będzie na poziomie niższym niż 20 zł brutto – to mniej niż 2 złote dziennie, a masz nad nim pełną kontrolę. W tym serwerze będą bardzo podobne rozwiązania jak w AIndrzeju, jeśli chodzi o bezpieczeństwo, w tym podstawowe pentesty AI.
Analiza zdjeć
To będzie dodatkowa opcja, którą dostanie AIndrzej zaraz po newsletterowym serwerze. Generalnie chodzi o to, żeby AIndrzej miał zdolność analizy treści zdjęcia i zrobienia autoopisu do sklepu, który będzie niedługo prawie samodzielnie prowadził. Info poniżej.
Automatyczny sklep charytatywny
To jest nasz główny cel, jeśli chodzi o AIndrzeja – samodzielny, w pełni automatyczny, charytatywny sklep online – i mamy nadzieję, że uda się go osiągnąć w pierwszym kwartale 2024 roku. Sklep będzie zarabiał sam na siebie, a nadwyżki będą przeznaczane na cele charytatywne. Bardzo możliwe, że społeczność na mediach społecznościowych będzie decydować, gdzie mają trafić te środki.
Słowem podsumowania stwierdzamy, że sztuczna inteligencja zagnieździła się w naszej firmie już na dobre. Analizuje dane, pomaga pisać kod, wspiera w poszukiwaniu rozwiązań, poprawia błędy w tekstach (ciągle piszemy samodzielnie), generuje obrazki, podpowiada pomysły, uczy się z nami nowych rzeczy, np. języków obcych, i jeszcze wiele innych rzeczy. Nawet jeśli rozwiązania online nie są konieczne, to mamy na swoim komputerze odpowiednie oprogramowanie, dzięki czemu możemy trzymać lokalnie własnego ChatGPT i DALL-E. Skoro nam tak ułatwia życie, to czemu nie miałoby pomóc również Tobie? Spodobały Ci się rozwiązania z AIndrzeja. Czekamy na kontakt! 🤔