Permalink
Browse files

new URL

  • Loading branch information...
DennisYurichev committed Dec 14, 2017
1 parent 6bb643e commit 5d9f07f18e6785eee514a419d385ceac90febf70
Showing with 88 additions and 88 deletions.
  1. +1 −1 1st_page_CN.tex
  2. +1 −1 1st_page_DE.tex
  3. +2 −2 CONTRIBUTING.md
  4. +1 −1 OS/LD_PRELOAD/main_DE.tex
  5. +1 −1 OS/LD_PRELOAD/main_EN.tex
  6. +1 −1 OS/LD_PRELOAD/main_FR.tex
  7. +1 −1 OS/LD_PRELOAD/main_RU.tex
  8. +4 −4 README.md
  9. +5 −5 Translation.md
  10. +1 −1 call_for_translators_CN.tex
  11. +1 −1 call_for_translators_DE.tex
  12. +1 −1 call_for_translators_EN.tex
  13. +1 −1 call_for_translators_FR.tex
  14. +1 −1 call_for_translators_ITA.tex
  15. +1 −1 call_for_translators_JPN.tex
  16. +1 −1 call_for_translators_PL.tex
  17. +1 −1 call_for_translators_RU.tex
  18. +1 −1 digging_into_code/strings/base64_DE.tex
  19. +1 −1 digging_into_code/strings/base64_EN.tex
  20. +1 −1 digging_into_code/strings/base64_RU.tex
  21. +2 −2 examples/bitcoin_miner/main_EN.tex
  22. +2 −2 examples/bitcoin_miner/main_RU.tex
  23. +7 −7 examples/encrypted_DB1/main_EN.tex
  24. +7 −7 examples/encrypted_DB1/main_RU.tex
  25. +1 −1 examples/minesweeper/main_EN.tex
  26. +1 −1 examples/minesweeper/main_RU.tex
  27. +4 −4 examples/simple_exec_crypto/main_EN.tex
  28. +1 −1 examples/timedate/main_EN.tex
  29. +1 −1 examples/timedate/main_RU.tex
  30. +4 −4 ff/XOR/mask_1/main_EN.tex
  31. +4 −4 ff/XOR/mask_1/main_RU.tex
  32. +4 −4 ff/XOR/mask_2/main_EN.tex
  33. +4 −4 ff/XOR/mask_2/main_RU.tex
  34. +2 −2 ff/entropy/math_EN.tex
  35. +2 −2 ff/entropy/math_RU.tex
  36. +1 −1 fundamentals/POPCNT_EN.tex
  37. +1 −1 fundamentals/POPCNT_FR.tex
  38. +1 −1 fundamentals/POPCNT_RU.tex
  39. +1 −1 fundamentals/data_types_and_numbers_EN.tex
  40. +1 −1 fundamentals/data_types_and_numbers_FR.tex
  41. +1 −1 fundamentals/data_types_and_numbers_RU.tex
  42. +1 −1 fundamentals/int_overflow_EN.tex
  43. +1 −1 fundamentals/int_overflow_RU.tex
  44. +1 −1 thanks.tex
  45. +1 −1 tools_DE.tex
  46. +1 −1 tools_EN.tex
  47. +1 −1 tools_FR.tex
  48. +1 −1 tools_JPN.tex
  49. +1 −1 tools_RU.tex
@@ -26,7 +26,7 @@
\bigskip


您正阅读的本书是\href{http://beginners.re/}{免费的}并已经\href{https://github.com/dennis714/RE-for-beginners/}{以开放源代码的方式发布}。
您正阅读的本书是\href{http://beginners.re/}{免费的}并已经\href{https://github.com/DennisYurichev/RE-for-beginners/}{以开放源代码的方式发布}。
但我有时需要做一些工作以获取收入。所以,很抱歉将我个人的广告信息发布在这里。

\iffalse
@@ -26,7 +26,7 @@
\bigskip

Das vorliegende Buch ist \href{http://beginners.re/}{kostenlos} und
\href{https://github.com/dennis714/RE-for-beginners/}{als OpenSource erhältlich}.
\href{https://github.com/DennisYurichev/RE-for-beginners/}{als OpenSource erhältlich}.
Manchmal muss ich jedoch auch Geld verdienen, aus diesem Grund entschuldige ich mich im Voraus
für das Platzieren der Werbung an dieser Stelle.

@@ -11,7 +11,7 @@ Aside from LaTeX markup, there are only 2 macros you may be aware of.
Translating
-----------

Read [here](https://github.com/dennis714/RE-for-beginners/blob/master/Translation.md).
Read [here](https://github.com/DennisYurichev/RE-for-beginners/blob/master/Translation.md).

Adding comments to source code
------------------------------
@@ -23,7 +23,7 @@ It's fine to write comments like:
"I would love to read more about this and that right here at this place" and/or
"It's also a great idea to mention this and that right here".

[For example](https://github.com/dennis714/RE-for-beginners/blob/b0fe5ef304fa3303c502c4f94ee147683a2ffb50/patterns/main.tex#L105).
[For example](https://github.com/DennisYurichev/RE-for-beginners/blob/b0fe5ef304fa3303c502c4f94ee147683a2ffb50/patterns/main.tex#L105).

When time will allow me, I will try to extend these parts.

@@ -79,7 +79,7 @@ \subsection{\IT{LD\_PRELOAD}-Hack in Linux}
einfacher wäre.

\lstinputlisting[style=customc]{OS/LD_PRELOAD/fool_uptime.c}
( \href{https://github.com/dennis714/RE-for-beginners/blob/master/OS/LD_PRELOAD/fool_uptime.c}{Quellcode auf GitHub} )
( \href{https://github.com/DennisYurichev/RE-for-beginners/blob/master/OS/LD_PRELOAD/fool_uptime.c}{Quellcode auf GitHub} )
% FIXME go.yurichev.com...

Kompilieren wir den Code als gemeinsame, dynamische Bibliothek:
@@ -74,7 +74,7 @@ \subsection{\IT{LD\_PRELOAD} hack in Linux}
written by Yong Huang}, that would be easier.

\lstinputlisting[style=customc]{OS/LD_PRELOAD/fool_uptime.c}
( \href{https://github.com/dennis714/RE-for-beginners/blob/master/OS/LD_PRELOAD/fool_uptime.c}{Source code at GitHub} )
( \href{https://github.com/DennisYurichev/RE-for-beginners/blob/master/OS/LD_PRELOAD/fool_uptime.c}{Source code at GitHub} )
% FIXME go.yurichev.com...

Let's compile it as common dynamic library:
@@ -74,7 +74,7 @@ \subsection{Hack \IT{LD\_PRELOAD} sur Linux}
écrit par Yong Huang}.

\lstinputlisting[style=customc]{OS/LD_PRELOAD/fool_uptime.c}
( \href{https://github.com/dennis714/RE-for-beginners/blob/master/OS/LD_PRELOAD/fool_uptime.c}{Code source sur GitHub} )
( \href{https://github.com/DennisYurichev/RE-for-beginners/blob/master/OS/LD_PRELOAD/fool_uptime.c}{Code source sur GitHub} )
% FIXME go.yurichev.com...

Compilons le comme une bibliothèque dynamique standard:
@@ -68,7 +68,7 @@ \subsection{Трюк с \IT{LD\_PRELOAD} в Linux}
\footnote{\href{http://go.yurichev.com/17143}{yurichev.com}} написанной Yong Huang}, так было бы проще.

\lstinputlisting[style=customc]{OS/LD_PRELOAD/fool_uptime.c}
( \href{https://github.com/dennis714/RE-for-beginners/blob/master/OS/LD_PRELOAD/fool_uptime.c}{Исходный код на GitHub} )
( \href{https://github.com/DennisYurichev/RE-for-beginners/blob/master/OS/LD_PRELOAD/fool_uptime.c}{Исходный код на GitHub} )
% FIXME go.yurichev.com...

Компилируем как динамическую библиотеку:
@@ -1,7 +1,7 @@
"Reverse Engineering for Beginners" free book
---------------------------------------------

[![Build Status](https://travis-ci.org/dennis714/RE-for-beginners.svg?branch=master)](https://travis-ci.org/dennis714/RE-for-beginners)
[![Build Status](https://travis-ci.org/DennisYurichev/RE-for-beginners.svg?branch=master)](https://travis-ci.org/DennisYurichev/RE-for-beginners)

Topics discussed: x86/x64, ARM/ARM64, MIPS, Java/JVM.

@@ -11,10 +11,10 @@ Compiled versions can be found here:
[German](https://beginners.re/RE4B-DE.pdf) and
[French](https://beginners.re/RE4B-FR.pdf).

See also the [ChangeLog](https://github.com/dennis714/RE-for-beginners/blob/master/ChangeLog) for the latest changes.
See also the [ChangeLog](https://github.com/DennisYurichev/RE-for-beginners/blob/master/ChangeLog) for the latest changes.

Want to contribute in some way? Read [here](https://github.com/dennis714/RE-for-beginners/blob/master/CONTRIBUTING.md).
Want to contribute in some way? Read [here](https://github.com/DennisYurichev/RE-for-beginners/blob/master/CONTRIBUTING.md).
Do not worry to bother me while writing me about any petty mistakes you found, even if you are not very confident.
I'm writing for beginners, after all, so beginners' opinions and comments are crucial for my job.

Want to translate this book into some other language? Read [here](https://github.com/dennis714/RE-for-beginners/blob/master/Translation.md).
Want to translate this book into some other language? Read [here](https://github.com/DennisYurichev/RE-for-beginners/blob/master/Translation.md).
@@ -1,14 +1,14 @@
# Want to translate this book to another language?

Take a look on [GitHub repository](https://github.com/dennis714/RE-for-beginners).
Take a look on [GitHub repository](https://github.com/DennisYurichev/RE-for-beginners).
For example, `main_EN.tex` for English, `main_RU.tex` for Russian, etc.
So just find `filename_EN.tex` file you want to translate, copy to filename_XX.tex (where XX is your language)
and replace English text by yours.
No special TeX/LaTeX knowledge is needed.
Then just send it to me.
Or if you familiar with git and github, add your file to source tree and create pull request.
How to find directories with `*_EN.tex` files?
[Look here](https://github.com/dennis714/RE-for-beginners/search?utf8=%E2%9C%93&q=input+EN&type=Code).
[Look here](https://github.com/DennisYurichev/RE-for-beginners/search?utf8=%E2%9C%93&q=input+EN&type=Code).

Please submit your work as early as possible: other translators will be aware of the piece of work already done.

@@ -62,7 +62,7 @@ in the directory you're currently working with contents like
I'm going to translate this part soon.
-- my@email.com, username@github.com, DD/MM/YYYY.

[For example](https://github.com/dennis714/RE-for-beginners/blob/2bc65d9533d48b023cf5ac467c42f4ef1aee90e0/OS/Note_to_German_translators.txt).
[For example](https://github.com/DennisYurichev/RE-for-beginners/blob/2bc65d9533d48b023cf5ac467c42f4ef1aee90e0/OS/Note_to_German_translators.txt).
You can jokingly call it "mutex".
Feel free to add any other notes for rest of translators.

@@ -78,8 +78,8 @@ And/or, I add commentary at the first line of each translated file, which should

listings TeX package sometimes goes crazy if it encounters UTF-8 character(s) and digit(s) in one line: [stack overflow discussion](http://tex.stackexchange.com/questions/24528/having-problems-with-listings-and-utf-8-can-it-be-fixed).
So it must be escaped, and in this project, "paragraph" symbol is used: `§`.
(Almost) all Cyrillic comments in listings are escaped, [for example](https://github.com/dennis714/RE-for-beginners/blob/9bcd72d176b1f86aa31dda21007740f83ae90484/patterns/02_stack/04_alloca/2_1_gcc_intel_O3_RU.asm#L9).
How to escape French diacritic symbols, [for example](https://github.com/dennis714/RE-for-beginners/blob/c4ee7d6abc3022fd60167d22f47cf100bc4be425/patterns/03_printf/ARM/ARM8_O0_FR.lst#L12).
(Almost) all Cyrillic comments in listings are escaped, [for example](https://github.com/DennisYurichev/RE-for-beginners/blob/9bcd72d176b1f86aa31dda21007740f83ae90484/patterns/02_stack/04_alloca/2_1_gcc_intel_O3_RU.asm#L9).
How to escape French diacritic symbols, [for example](https://github.com/DennisYurichev/RE-for-beginners/blob/c4ee7d6abc3022fd60167d22f47cf100bc4be425/patterns/03_printf/ARM/ARM8_O0_FR.lst#L12).
Do not worry about misplacing them or not placing at all, I'll fix it by myself.

For those, who interested, § symbol is in fact switches you into TeX mode, and you can write anything here as in .tex files, like `\IT{italic}`, etc.
@@ -24,7 +24,7 @@
或者你想帮我把本书翻译成出了英语和俄语之外的版本。
那就直接把你翻译的章节发给我(不管有多少),我会把它们加入到LaTeX代码库。

\href{https://github.com/dennis714/RE-for-beginners/blob/master/Translation.md}{看看这个文档}。
\href{https://github.com/DennisYurichev/RE-for-beginners/blob/master/Translation.md}{看看这个文档}。

% TBT

@@ -12,7 +12,7 @@
Russisch) helfen. Senden Sie mir einen übersetzten Textteil, egal wie kurz und ich arbeite ihn in den
\LaTeX{}-Quellcode ein.

\href{https://github.com/dennis714/RE-for-beginners/blob/master/Translation.md}{Hier lesen}.
\href{https://github.com/DennisYurichev/RE-for-beginners/blob/master/Translation.md}{Hier lesen}.

% TBT

@@ -11,7 +11,7 @@
You may want to help me with translating this work into languages other than English and Russian.
Just send me any piece of translated text (no matter how short) and I'll put it into my LaTeX source code.

\href{https://github.com/dennis714/RE-for-beginners/blob/master/Translation.md}{Read here}.
\href{https://github.com/DennisYurichev/RE-for-beginners/blob/master/Translation.md}{Read here}.

We already have something in \href{https://beginners.re/RE4B-DE.pdf}{German},
\href{https://beginners.re/RE4B-FR.pdf}{French}, a bit in
@@ -11,7 +11,7 @@
Vous souhaitez peut-être m'aider en traduisant ce projet dans d'autres langues, autres que l'anglais et le russe.
Il vous suffit de m'envoyer les portions de texte que vous avez traduites (peu importe leur longueur) et je les intégrerai à mon code source LaTeX.

\href{https://github.com/dennis714/RE-for-beginners/blob/master/Translation.md}{Lire ici}.
\href{https://github.com/DennisYurichev/RE-for-beginners/blob/master/Translation.md}{Lire ici}.

Nous avons déjà quelque chose en \href{https://beginners.re/RE4B-DE.pdf}{allemand},
\href{https://beginners.re/RE4B-FR.pdf}{français}, un peu en
@@ -11,7 +11,7 @@
Puoi aiutare a tradurre questo progetto in linguaggi diversi dall'Inglese ed il Russo.
Basta inviarmi un qualsiasi pezzo di testo tradotto (non importa quanto è lungo) e lo aggiungerò al mio codice sorgente scritto in LaTeX.

\href{https://github.com/dennis714/RE-for-beginners/blob/master/Translation.md}{Leggi qui}.
\href{https://github.com/DennisYurichev/RE-for-beginners/blob/master/Translation.md}{Leggi qui}.

% TBT

@@ -11,7 +11,7 @@
この作品を英語とロシア語以外の言語に翻訳するのを手伝ってください。
どのように翻訳されたテキストを私に送っても(どれほど短くても)、私はLaTeXのソースコードに入れます。

\href{https://github.com/dennis714/RE-for-beginners/blob/master/Translation.md}{Read here}.
\href{https://github.com/DennisYurichev/RE-for-beginners/blob/master/Translation.md}{Read here}.

いくつかは既にあります。\href{https://beginners.re/RE4B-DE.pdf}{ドイツ語},
\href{https://beginners.re/RE4B-FR.pdf}{フランス語}, 少しですが
@@ -10,7 +10,7 @@
Możliwe, że będziesz chciał pomóc mi z przetłumaczeniem tej książki na inne języki, oprócz angielskiego i rosyjskiego.
Proszę po prostu przesłać mailowo fragment przetłumaczonego tekstu (obojętnie jakiej długości), i ja dodam go do kodu źródłowego w TeX.

\href{https://github.com/dennis714/RE-for-beginners/blob/master/Translation.md}{Czytać tutaj}.
\href{https://github.com/DennisYurichev/RE-for-beginners/blob/master/Translation.md}{Czytać tutaj}.

% TBT

@@ -10,7 +10,7 @@
Возможно, вы захотите мне помочь с переводом этой работы на другие языки, кроме английского и русского.
Просто пришлите мне любой фрагмент переведенного текста (не важно, насколько короткий), и я добавлю его в исходный код на LaTeX.

\href{https://github.com/dennis714/RE-for-beginners/blob/master/Translation.md}{Читайте здесь}.
\href{https://github.com/DennisYurichev/RE-for-beginners/blob/master/Translation.md}{Читайте здесь}.

Уже есть кое-что на \href{https://beginners.re/RE4B-DE.pdf}{немецком},
\href{https://beginners.re/RE4B-FR.pdf}{французском}, и чуть-чуть на
@@ -52,7 +52,7 @@ \subsubsection{Base64}

\myindex{base64scanner}
Es gibt Werkzeuge zum scannen von beliebigen Bin\"ardateien nach Base64 Strings.
Ein solch ein Scanner ist base64scanner\footnote{\url{https://github.com/dennis714/base64scanner}}.
Ein solch ein Scanner ist base64scanner\footnote{\url{https://github.com/DennisYurichev/base64scanner}}.

\myindex{UseNet}
\myindex{FidoNet}
@@ -50,7 +50,7 @@ \subsubsection{Base64}

\myindex{base64scanner}
There are utilities for scanning an arbitrary binary files for base64 strings.
One such utility is base64scanner\footnote{\url{https://github.com/dennis714/base64scanner}}.
One such utility is base64scanner\footnote{\url{https://github.com/DennisYurichev/base64scanner}}.

\myindex{UseNet}
\myindex{FidoNet}
@@ -50,7 +50,7 @@ \subsubsection{Base64}

\myindex{base64scanner}
Существуют утилиты для сканирования бинарных файлов и нахождения в них base64-строк.
Одна из них это base64scanner\footnote{\url{https://github.com/dennis714/base64scanner}}.
Одна из них это base64scanner\footnote{\url{https://github.com/DennisYurichev/base64scanner}}.

\myindex{UseNet}
\myindex{FidoNet}
@@ -10,7 +10,7 @@ \section{Overclocking Cointerra Bitcoin miner}
\caption{Board}
\end{figure}

And there was also (possibly leaked) utility\footnote{Can be downloaded here: \url{https://github.com/dennis714/RE-for-beginners/raw/master/examples/bitcoin_miner/files/cointool-overclock}}
And there was also (possibly leaked) utility\footnote{Can be downloaded here: \url{https://github.com/DennisYurichev/RE-for-beginners/raw/master/examples/bitcoin_miner/files/cointool-overclock}}
which can set clock rate for the board.
It runs on additional BeagleBone Linux ARM board (small board at bottom of the picture).

@@ -258,7 +258,7 @@ \section{Overclocking Cointerra Bitcoin miner}
\end{lstlisting}

Division via multiplication is used here, and constant is 0x51EB851F.
I wrote a simple programmer's calculator\footnote{\url{https://github.com/dennis714/progcalc}} for myself.
I wrote a simple programmer's calculator\footnote{\url{https://github.com/DennisYurichev/progcalc}} for myself.
And I have there a feature to calculate modulo inverse.

\begin{lstlisting}
@@ -10,7 +10,7 @@ \section{Разгон майнера биткоинов Cointerra}
\caption{Board}
\end{figure}

И была также (возможно утекшая) утилита\footnote{Можно скачать здесь: \url{https://github.com/dennis714/RE-for-beginners/raw/master/examples/bitcoin_miner/files/cointool-overclock}}
И была также (возможно утекшая) утилита\footnote{Можно скачать здесь: \url{https://github.com/DennisYurichev/RE-for-beginners/raw/master/examples/bitcoin_miner/files/cointool-overclock}}
которая могла выставлять тактовую частоту платы.
Она запускается на дополнительной плате BeagleBone на ARM с Linux (маленькая плата внизу фотографии).

@@ -262,7 +262,7 @@ \section{Разгон майнера биткоинов Cointerra}
\end{lstlisting}

Здесь используется деление через умножение, и константа 0x51EB851F.
Я написал для себя простой программистский калькулятор\footnote{\url{https://github.com/dennis714/progcalc}}.
Я написал для себя простой программистский калькулятор\footnote{\url{https://github.com/DennisYurichev/progcalc}}.
И там есть возможность вычислять обратное число по модулю.

\begin{lstlisting}
@@ -34,7 +34,7 @@ \subsection{Base64 and entropy}
...
\end{lstlisting}

The file is available \href{https://raw.githubusercontent.com/dennis714/RE-for-beginners/master/examples/encrypted_DB1/encrypted.xml}{here}.
The file is available \href{https://raw.githubusercontent.com/DennisYurichev/RE-for-beginners/master/examples/encrypted_DB1/encrypted.xml}{here}.

\myindex{base64}
This is clearly base64-encoded data, because all strings consisting of Latin characters, digits,
@@ -419,10 +419,10 @@ \subsection{Initializing Vector}
I finally concluded that the first 32-bit integer is just OrderID from the \ac{XML} file,
and the second 32-bit integer is also OrderID, but negated. All other 8 bytes are same for each operation.
Now I have decrypted the whole database:
\url{https://raw.githubusercontent.com/dennis714/RE-for-beginners/master/examples/encrypted_DB1/decrypted.full.txt}.
\url{https://raw.githubusercontent.com/DennisYurichev/RE-for-beginners/master/examples/encrypted_DB1/decrypted.full.txt}.

The Python script used for this is:
\url{https://github.com/dennis714/RE-for-beginners/blob/master/examples/encrypted_DB1/decrypt_blocks.py}.
\url{https://github.com/DennisYurichev/RE-for-beginners/blob/master/examples/encrypted_DB1/decrypt_blocks.py}.

Perhaps, the author wanted each block encrypted differently, so he/she used OrderID as part of key.
It would be also possible to make different AES key instead of \ac{IV}.
@@ -475,7 +475,7 @@ \subsection{Structure of the buffer}
There are 12 more bytes after each string.

Using this script
(\url{https://github.com/dennis714/RE-for-beginners/blob/master/examples/encrypted_DB1/dump_buffer_rest.py})
(\url{https://github.com/DennisYurichev/RE-for-beginners/blob/master/examples/encrypted_DB1/dump_buffer_rest.py})
I've got random selection of the \IT{tails}:

\lstinputlisting{examples/encrypted_DB1/tails.lst}
@@ -552,8 +552,8 @@ \subsection{Structure of the buffer}
OrderID= 5 name= LENA MARCUS sum= 179.0 date= 2004 / 6 / 3
\end{lstlisting}

See more: \url{https://raw.githubusercontent.com/dennis714/RE-for-beginners/master/examples/encrypted_DB1/decrypted.full.with_data.txt}.
Or filtered: \url{https://github.com/dennis714/RE-for-beginners/blob/master/examples/encrypted_DB1/decrypted.short.txt}.
See more: \url{https://raw.githubusercontent.com/DennisYurichev/RE-for-beginners/master/examples/encrypted_DB1/decrypted.full.with_data.txt}.
Or filtered: \url{https://github.com/DennisYurichev/RE-for-beginners/blob/master/examples/encrypted_DB1/decrypted.short.txt}.
Seems correct.

This is some kind of \ac{OOP} serialization, i.e., packing differently typed values into binary buffer for storing and/or transmitting.
@@ -636,7 +636,7 @@ \subsection{Conclusion}
and combined them randomly.
Dates and sums were also generated randomly.

All files used in this part are here: \url{https://github.com/dennis714/RE-for-beginners/tree/master/examples/encrypted_DB1}.
All files used in this part are here: \url{https://github.com/DennisYurichev/RE-for-beginners/tree/master/examples/encrypted_DB1}.

Nevertheless, many features like these I've observed in real-world software applications.
This example is based on them.
Oops, something went wrong.

0 comments on commit 5d9f07f

Please sign in to comment.