Zapraszamy do zamówienia magazynu w >>prenumeracie<<. Miesięcznik jest dostępny w formie papierowej, PDF, EPUB i MOBI oraz AZW3. Do prenumeraty papierowej zawsze dołączamy wydania elektroniczne.
BIBLIOTEKI I NARZĘDZIA
Vaulty. Czym naprawdę są oraz jak i kiedy z nich korzystać
Koncepcja vaultów w IT nie jest niczym nowym, ale w czasach, w których przyszło nam żyć, i przy tak dużym obecnie ukierunkowaniu się na cyberbezpieczeństwo, można śmiało powiedzieć, że stały się one wszechobecne. W poniższym artykule zagłębimy się w ten temat i postaramy się nie tylko omówić, gdzie i jakie rodzaje takich sejfów możemy napotkać, ale także jak ich używać. Do naszej pracy zaciągniemy PowerShella, za pomocą którego połączymy się z wybranym vaultem. Dodatkowo pobierzemy sekretne dane, a także pokażemy, jak w prosty sposób zainstalować i korzystać z lokalnej instancji.
Michał Zbyl
Interfejs Programistyczny w Comarch ERP XL
Jednym z najważniejszych aspektów przy wyborze systemu klasy ERP jest możliwość jego dostosowania do indywidualnych potrzeb danego przedsiębiorstwa. Fakt ten niewątpliwie został zauważony przez producentów rozwiązań ERP, którzy udostępniają w swoich produktach
różne możliwości integracji oraz rozbudowy systemu. W poniższym artykule przedstawię jedną z możliwości rozbudowy systemu Comarch ERP XL, którą jest Interfejs Programistyczny. Opowiem o jego zastosowaniach oraz przedstawię proces tworzenia i rejestracji w systemie dodatku napisanego w oparciu o tenże interfejs.
Szymon Liszewski
JĘZYKI PROGRAMOWANIA
Rachunek lambda – czyli teoria dla lambda wyrażeń
Rachunek lambda – λ-rachunek – opracowany został przez Alonzo Church'a w latach trzydziestych ubiegłego wieku. Pierwotnie narzędzie to służyć miało do tłumaczenia podstaw matematyki, podobnie jak teoria mnogości. Zamiar ten, jak możemy dziś ocenić, nie powiódł się, a zamiast tego rachunek lambda znalazł zastosowanie w informatyce w teorii obliczania oraz stał się podstawą języków programowania w paradygmacie funkcyjnym (m.in. Lisp, Scheme, Standard-ML). W artykule podamy wstępne informacje o rachunku lambda w tzw. odmianie bez typów. Zaprezentujemy też jego składnię i semantykę, a także trzy podstawowe konwersje/redukcje: α, β, η (oznaczone greckimi literami alfa, beta, eta).
Marek Sawerwain
PROGRAMOWANIE GIER
Reversi w .NET MAUI
Tworzymy grę planszową dla systemów Windows i Android (>>więcej o tym artykule<<)
W dwóch wcześniejszych artykułach (Programista 2/2022 i 3/2022) oswajałem nową technologię .NET MAUI, która umożliwia tworzenie aplikacji wieloplatformowych z graficznym interfejsem użytkownika. Do tej pory testowaliśmy MAUI na przykładzie bardzo prostej aplikacji, umożliwiającej wybór trzech składowych RGB koloru za pomocą suwaków. Dziś sprawdzimy, czy możliwe jest stworzenie czegoś bardziej złożonego.
Jacek Matulewski
ALGORYTMIKA
Wyzwania algorytmów genetycznych
W poprzednim numerze „Programisty” przedstawiłem podstawowe koncepcje związane z programowaniem algorytmów genetycznych automatycznie uczących sieci neuronowe. Ponieważ temat okazał się tak ciekawy, że wsiąkłem w niego na dobre, podzielę się kilkoma ciekawymi spostrzeżeniami, których nauczyłem się od moich zmutowanych kierowców.
Wojciech Sura
STREFA CTF
justCTF 2022 – Solana, portfele i potwory (>>więcej o tym artykule<<)
JustCTF 2022 to kolejna, trzecia już edycja turnieju Capture The Flag typu „jeopardy” [0], organizowanego przez polski zespół justCatTheFish, którego członkami są autorzy tego artykułu. Poza atrakcyjnymi nagrodami do zdobycia (łącznie $5700 USD oraz 9 licencji Binary Ninja) uczestnicy mogli cieszyć się dość unikalnymi zadaniami, związanymi m.in z siecią blockchain Solana czy wykorzystywaniem błędów w programach binarnych, a także mieli okazję odkryć nieopisaną jeszcze technikę eksfiltracji danych przy użyciu arkuszy stylów CSS. W artykule tym opisujemy rozwiązania dwóch zadań: League of Lamports oraz Monsters.
Dominik ‘disconnect3d’ Czarnota, Tacet, Michał ‘embe221ed’ Bochnak
Z ARCHIWUM CVE
Błąd w sudo (>>więcej o tym artykule<<)
Kiedy ktoś nas zapyta, jakie oprogramowanie uważamy za bezpieczne, jednym tchem wymieniamy takie programy jak OpenSSH, OpenVPN i sudo. Gdy w jednym z nich pojawia się poważny problem, świat administratorów trzęsie się w posadach. Dziś przyjrzymy się błędowi, który istniał w sudo. Co ciekawe, eksploit na tę podatność zmieści się w jednej wiadomości na Twitterze i zostanie jeszcze sporo miejsca do podzielenia się swoją opinią na jego temat.
Mariusz Zaborski
PLANETA IT
Dobry programista musi umieć myśleć jak przestępca
Zabawa w policjantów i złodziei trwa nieprzerwanie od długich wieków – w różnej formie i w różnej skali, ale jednak oparta na tych samych fundamentach. I o ile daleko mi oczywiście do kibicowania ciemnej stronie mocy, to zadaję sobie czasami pytanie: czy od czasu do czasu również i rycerzowi w lśniącej zbroi nie przydałaby się znajomość kilku brudnych sztuczek?
Wojciech Sura
Prawo do naprawy
Czy telefon komórkowy lub laptop, który zdjęliśmy ze sklepowej półki, a potem za którego zapłaciliśmy w kasie, stał się naszą własnością? Wydawałoby się, że kwestia ta nie powinna podlegać jakiejkolwiek dyskusji. Smutna prawda jest taka, że we współczesnym świecie nie można już krótko i jasno udzielić na to pytanie odpowiedzi.
Wojciech Sura