Click on the asynchronous book, the top public account

Every day to share with you IT good books technology dry goods workplace knowledge



Participate in the topic discussion at the end of the article and give asynchronous books every day

— Asynchronous small editor

Di Qi (real name Zhang Mengmeng), once dreamed of becoming a senior interpreter, but accidentally became a programmer who loves writing code. In the IT river’s lake upgrade play strange process, in order to constantly improve their skills, reading is indispensable; To become an advanced player, reading English books is also a must. “By accident, I came across the English version of Linux Binary Analysis,” she says. It’s a bit of a struggle the first time around, since many of the concepts in the book are the author’s own, and there’s little available online. But this scarcity of content is essential for a deeper understanding of binary analysis, and translators are rewarded with knowledge. In line with the purpose of “one is better than all” and “knowledge sharing”, the translation of “Linux Binary Analysis” has thus naturally started.

Asynchronous community: Please introduce yourself to the readers of asynchronous community?

Dicchi: Hi, I’m Dicchi and I’m the translator of Linux Binary Analysis. In fact, I always wanted is to be advanced interpretation, but the university choose professional, for some reason to choose the computer, and then on the way of writing code more walk more far ~ haha ~ but the choice of life is actually a lot of, I can be based on my own English, translation of some relevant English literature, computer science either for myself, Or for everyone, it is a win-win thing, why not?

Asynchronous community: How long have you been working at Baidu? What work and projects are being done?

Di: ACTUALLY, I joined Baidu quite early. I have had an internship for two years and have been working officially for one and a half years. This is the place where I finally got a job after many internships and job hopping. Mainly Java development, currently doing projects related to the Internet of Things technology.

Alternative Community: What are the steps you must take to become an advanced player at work?

Di: Personally, I think there are three things that are important. The first is the accumulation of experience, the second is to maintain the mentality of development, at any time to recharge their own, the third is to think more. In fact, I am also a newcomer to the workplace. In my work, I have consulted some senior colleagues and found that there is a common point in their advice. That is, they should first accumulate and structure what they have mastered to form their own things. In the process of accumulation and arrangement, we gradually internalize it into our own things. There is now knowledge update so fast, must learn more. Then, think more, the brain with more spirit, ha ha ~ I am not a senior player, I also have a long way to go, but everyone must have their own general direction.

Asynchronous Community: How did you get into Linux Binary Analysis? What difficulties have you encountered in the translation process?

Di qi: I used to be a volunteer translator for Linux China and a news editor for Linux China. Wang Xingyu, the founder of Linux China, talked to me about my technical background and the quality of my translated articles and asked me if I was interested in translating. Translating a book happened to be my goal for 2016. It was really a coincidence, and I treasured this opportunity. I am not in the field of security technology myself, so I was a little afraid at the beginning, and I would doubt myself, but how can I know if I don’t take a challenge ~ haha ~ I like challenges and breakthroughs very much. I tried to translate two chapters and sent them to the chief editor for a look. I thought it was ok, so I continued to translate.

Problems encountered in the translation process, it is really a long story. Before the formal translation of this book, I did a lot of preparatory work, made up for some basic knowledge related to decompilation, read the book “Self-cultivation of Programmers” for several times, and also looked up a lot of information on the Internet. The beginning is hard, and once you do, it feels good. In fact, the first two chapters is the most difficult, on the one hand, for some terms, to look up a lot of data are identified, on the other hand also the author of the book’s code to run the check for bugs, and in the first translation, also have no temper out their own style, so the style is a bit obscure, the reader should feel is smooth many read chapter 3. Sometimes the expression of the author is not too clear, there are some partial colloquial sentences, I think for a long time didn’t get to, also very upset ~ also, when I was in the translation of the book, just formally entered the workplace, sometimes the timing is not very reasonable, working hours, I will focus on their work, so the translation of the things I have in the evening, often in the morning. So I felt like I was three years older when I translated this book, haha ~~ these are some of the problems I encountered in the translation process, but I am not afraid of difficulties, there will always be a way to overcome them, just so optimistic.

Asynchronous Community: As the translator of Linux Binary Analysis, what do you think of the learning needs of different readers?

Dicchi: Actually, the book is quite practical. To learn this book, first of all to link, load and library these basic concepts have a certain understanding, to have a certain coding foundation, of course, this is not the most important, the most important is interest. Are interested in, you will want to follow the author’s ideas in the book to practice the books inside the code, such as how to set a piece of code into the program, how to track a process, the content of the book is just a teaser, through some of the things mentioned in the book, the reader to more in-depth study and discussion, true value of the book. For example, the author of the original book wrote his own fTrace to track function calls to executable files, so interested readers can build their own wheels to do dynamic analysis, which is easy to get started. I’m not encouraging you to build wheels here, it would be nice to have a wheel that you can use, just as an example.

Asynchronous communities: What is the attitude towards evolving technologies and new technologies in the industry? From the current situation, what is the expected trend of the industry?

Di: Personally, I think just keep an open mind. There will always be technological evolution and new technologies. The only constant in this world is change. Embrace the change. But in fact, there is always something unchanged, which is the core competitiveness. Your ability to learn, your way of thinking, no one can take that away from you. Of course, there is a constant cognitive upgrade. There will be a lot of feedback that in this era, it is very easy to be anxious, especially the occasional midlife crisis news, make everyone nervous. But there is no need to worry, as long as you have a firm direction, keep moving on.

My personal experience in the IT industry is still young, and I dare not say anything about the industry’s situation and trend. But AI is a trend right now, it’s a trend, and the projects I’m working on are related to AI. Personally, I am very optimistic about the development of AI, and I hope that this trend will continue, and I hope that AI can bring benefits to human life.

Asynchronous communities: What do you think is the hardest part of software reverse engineering?

Dicchi: The hardest thing for me is overcoming technological fear. Maybe everyone’s fear is different. When it comes to difficulty, it’s because of fear. But you know, technological fear, or any fear, can be a bottleneck in the future, so get over it. For anything, once started to do, encountered problems to the Internet search, or to consult peers, there will always be a way to solve.

Asynchronous community: Why does a lot of software under Linux need to be compiled rather than distributed to binaries?

Di: Because Linux distributions and libraries are different, and applications tend to rely on many other libraries, it’s easier to distribute source code. And Linux also has a tradition of compiling from source code and then using it, so it’s reassuring that you don’t have to worry about whether the binary you’ve compiled has been injected with malicious code. In fact, many programmers diagram save trouble, directly to the source code to come out, the source code is the most direct output, binary code to compile.

Asynchronous community: You said, “To be a real hacker, you need not only to be able to write programs, but also to parse programs, decompile existing binaries, and understand how programs work.” Why did you think so?

Di march: In my opinion, this is a basic quality as a hacker, learning to know the why, can skilled to do the things you want to do ah, hey hey, is that you want to do, here is not to encourage people to black house website ~ actually to become experts in the field of security, was in a security against the attack, you understand something at the bottom of the, positioning problem will be a lot faster, It’s easy to see where to start.

Asynchronous community: Finally, what advice and experience do you have for those just starting out in Linux?

Dicchi: I suggest you spend more time in the Open source Linux community in China and get involved in the community. There are a lot of seniors here who can give you a lot of guidance.


Linux Binary Analysis


Linux Binary Analysis

By Ryan O’Neill

Click on the cover to buy the paper book


This book is the only book so far to analyze the working mechanism of Linux ELF. The book explains the inner working mechanism of Linux ELF binary format, techniques for detecting and analyzing UNIX viruses, methods for dealing with binary hardening and software tampering, patching executable files and process memory. Bypass anti-debugging techniques used in malware, perform advanced binary forensic analysis, design ELF-related tools in C, and run pTrace on memory.



Click on the picture to sign up


Today’s topic

What are your growth goals for 2018? Deadline: 17:00 on March 28th, leave a message + forward this activity to moments, xiaobian will select 1 reader to give a book asynchronous. (Note: this activity is only participated in the wechat asynchronous book public account)

Stretch recommended

Elementary school students are learning Python, the closest programming language to AI: A Wave of Python books from Amway

A list of classic algorithms that programmers must read

AI | classic books (introduction to artificial intelligence which books to read?


Click on keywords to read more new books:

Python | | machine learning Kotlin Java | | | | mobile development robots contests | Web front-end | book list



Long press the QR code, you can follow us yo

I share IT articles with you every day.


If you reply “follow” in the background of “Asynchronous books”, you can get 2000 online video courses for free. Recommend friends to pay attention to according to the prompts to get a gift book link, free of charge asynchronous books. Come and join us!


Read the article below to see more


Read the original