fbpx
devstyle.pl - Blog dla każdego programisty
devstyle.pl - Blog dla każdego programisty
3 minut

Książka "Praktyczna inżynieria wsteczna" + konkurs!


13.12.2016

Są na tym świecie rzeczy, które się fizjonomom nie śniły!” – kto kojarzy taki cytat? W programowaniu są z kolei obszary, w które zapuszczają się nieliczni-li jedynie śmiałkowie.

Good news everyone: ci śmiałkowie zebrali się do kupy i napisali książkę. Ksiązkę, którą każdy CRUDowiec powinien dostać pod choinkę.

O jakie obszary chodzi? I co to za książka? Cyk:

clip_image001

Kilkunastu uznanych speców, pod okiem innych uznanych speców, napisało księgę opisującą tajemnice skrywane przez przeróżne technologie. Znajdziemy tam zarówno ogólne koncepcje związane z RE (Reverse Engineering), jak i rozdziały poświęcone .NETowi i Pythonowi. Na uwagę zasługuje bardzo ciekawy rozdział o wstrzykiwaniu kodu w inne procesy. W sumie dostajemy 12 części traktujących o okolicach inżynierii wstecznej właśnie.

Pozycja ta wyszła całkiem niedawno i aktualnie jest w promocji. Lećcie i bierzcie póki ciepłe <link>!

W książce palce maczał Gynvael Coldwind, z którym miałem przyjemność nagrać podcast. Do posłuchania tutaj: DevTalk#33: O programowaniu z Gynvaelem Coldwindem.

Konkurs

I uwaga, uwaga, achtung!

Mam do rozdania trzy (słownie: trzy) egzemplarze tej książki. Co zrobić, aby wygrać? Wykonać jedno z zadań:

  1. opisz działanie dowolnego obfuskatora dla platformy .NET
  2. napisz artykuł opisujący dowolny dekompilator dla .NET, np. dnSpy, IL Spy, Reflector
  3. opisz jedną z metod powodujących błąd dekompilacji za pomocą dnSpy, IL Spy, Reflectora lub innego narzędzia
  4. napisz program, który po uruchomieniu wykona kod niewidoczny podczas dekompilacji

Zadania tekstowe (1-3) mogą być opublikowane w dowolnym, dostępnym publicznie, miejscu. Może być to Twój blog, może być Medium, może być jako gist na GitHubie… Język: polski lub angielski. Jeśli artykuł będzie wysokiej jakości i wyrazisz taką wolę to pomyślimy nad publikacją go tutaj, na devstyle. Rozwiązanie zadania to umieszczenie linku w komentarzu do tego posta.

Rozwiązanie zadania z kodowaniem (4) musi być umieszczone na GitHubie, a link do niego wpisany w komentarzu pod tym postem.

Lista zwycięzców zostanie ogłoszona we środę 21 grudnia. Do roboty! :)

P.S.

Jako devstyle.pl objąłem patronat medialny nad książką. I dobrze.

0 0 votes
Article Rating
21 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Paweł Łukasik
7 years ago

Biorąc pod uwagę, że jako jedno z miejsc docelowe jest wskazane “Medium” to rozumiem, że tekst może być po angielsku.

Pozdrawiam,
Paweł

Maciej Kołodziej
Maciej Kołodziej
7 years ago

4) używająć kompilacji expressionów, wykonuje switch, którego nie ma z
https://github.com/Makciek/SwitchExpression

ANDRZEJ BARGAŃSKI
ANDRZEJ BARGAŃSKI
7 years ago

Warto przeczytać jak zabezpieczać programy przed nielegalnym użytkowaniem. Bo niby jest HASP, i inne cuda, a okazuje się że wystarczy parę NOP-ów żeby to obejść. Patrzyłem w spis treści i widzę że nie ma o wstrzykiwaniu się do JVM. Temat zbyt banalny ? (Sam się wstrzykuje do JVM z Weblogiciem)

piatkosia
7 years ago

Hmm, świetny pomysł na arta. I… chyba napiszę bo aż mnie korci. Choć pewnie będzie nie do końca na temat, ale będę chciała pokazać ciekawy myk.

Kuba
7 years ago

3 oczywiście!

Kuba
7 years ago

Dekomplilacja w mojej ocenie powinna odwzorować kod tak jak został on napisany. Tutaj pokazuje coś innego niż napisał programista, więc popełnił błąd. Starałem się go pokazać i wyjaśnić dlaczego wystąpił :)

Kuba
7 years ago

Mimo niezrozumienia mam nadzieję, że to co napisałem kogoś zainteresuje i pokaże coś fajnego :)

Paweł Łukasik
7 years ago

Jak dokładnie rozumieć punkt 4 “napisz program, który po uruchomieniu wykona kod niewidoczny podczas dekompilacji” – czy za niewidoczny można rozumieć kod zaszyfrowany? Czy np. wy-Emit-owany kod w runtime będzie ok? Czy chodzi o powiązanie np. techniki z punktu 3 z kodem?

Pozdrawiam,
Paweł

piatkosia
7 years ago

Hmm, jak napisałam, tak zrobiłam. Obsuwa czasowa wynikała z przegranej walki z IDE i załamaniem nerwowym z tego powodu. Zainspirowałeś mnie do napisania tego: http://piatkosia.k4be.pl/wordpress/2016/12/18/ilspy-szpiegujemy-szpiega/
Możesz być z siebie dumny:)

Paweł Łukasik
7 years ago

Zgłoszenie konkursowe.

Punkt 3:

http://blog.octal.pl/2016/11/emitbyte-one-cool-il-directive-that-can-do-evil.html

Pozdrawiam,
Paweł Łukasik

trackback

[…] aplikacją pierwszej potrzeby, zwłaszcza w kontekście szybszego pisania kodu, ale zainspirowany inicjatywą Maćka postanowiłem opisać dekompilator, którego osobiście używam. Choć nie jest on przeze mnie zbyt […]

Code Faster
7 years ago

Zadanie nr 2: codefaster.pl/dekompilacja-przy-pomocy-dotpeek
Mam nadzieję, że zdążyłem :)

Kurs Gita

Zaawansowany frontend

Szkolenie z Testów

Szkolenie z baz danych

Książka

Zobacz również