IBM Interview Question for Software Engineer / Developers






Comment hidden because of low score. Click to expand.
1
of 1 vote

"what's a DLL" - must be from a recent Indian grad...don't know the answer - google it or post a question on one of the multitude of websites, and pretend you're an expert

- "what's a DLL" June 01, 2009 | Flag Reply
Comment hidden because of low score. Click to expand.
0
of 0 votes

Can we avoid passing comments like these here.

- Aman August 04, 2009 | Flag
Comment hidden because of low score. Click to expand.
0
of 0 votes

dont try to be too smart dude..this is learning forum n there r nice way to say such thing.dont demoralize anyone.

- Anonymous March 08, 2010 | Flag
Comment hidden because of low score. Click to expand.
0
of 0 votes

dont try to be too smart dude..this is learning forum n there r nice way to say such thing.dont demoralize anyone.

- Anonymous March 08, 2010 | Flag
Comment hidden because of low score. Click to expand.
0
of 0 vote

Hey wat do you mean by DLL here??

- Anonymous April 13, 2008 | Flag Reply
Comment hidden because of low score. Click to expand.
0
of 0 vote

name mangling would do it

- gotcha December 23, 2008 | Flag Reply
Comment hidden because of low score. Click to expand.
0
of 0 vote

DLL- Dll Means dynamic link library. that is the source for link from system information bank.

- PRASANNA, 3i-infotech consulting,Network support Engg May 28, 2009 | Flag Reply
Comment hidden because of low score. Click to expand.
0
of 0 vote

hmm.. how about the dll calling other header files within it which are unknown. or maybe the dll calling other dlls.?

something that the user cannot track.

- Rohit December 28, 2009 | Flag Reply
Comment hidden because of low score. Click to expand.
0
of 0 vote

hmm.. how about the dll calling other header files within it which are unknown. or maybe the dll calling other dlls.?

something that the user cannot track.

- Rohit December 28, 2009 | Flag Reply
Comment hidden because of low score. Click to expand.
0
of 0 vote

hmm.. how about the dll calling other header files within it which are unknown. or maybe the dll calling other dlls.?

something that the user cannot track.

- Rohit December 28, 2009 | Flag Reply
Comment hidden because of low score. Click to expand.
0
of 0 vote

hmm.. how about the dll calling other header files within it which are unknown. or maybe the dll calling other dlls.?

something that the user cannot track.

- Rohit December 28, 2009 | Flag Reply
Comment hidden because of low score. Click to expand.
0
of 0 votes

I think what they meant by reverse engineering dll's is that we can try to reverse engineer dll's especially the ones that are of OS and find out security flaws in the code and run bad programs on your computer.

To avoid reverse engineering of dll's to some extent. The program execution flow should be very random in a way it is not comprehensible. We can also add lot of obfuscated code to avoid reverse engineering. i.e. add garbage code to just confuse the people who are trying to reverse engineer.

- Anonymous October 10, 2010 | Flag
Comment hidden because of low score. Click to expand.
0
of 0 votes

I think what they meant by reverse engineering dll's is that we can try to reverse engineer dll's especially the ones that are of OS and find out security flaws in the code and run bad programs on your computer.

To avoid reverse engineering of dll's to some extent. The program execution flow should be very random in a way it is not comprehensible. We can also add lot of obfuscated code to avoid reverse engineering. i.e. add garbage code to just confuse the people who are trying to reverse engineer.

- anon October 10, 2010 | Flag
Comment hidden because of low score. Click to expand.
0
of 0 vote

I think what they meant by reverse engineering dll's is that we can try to reverse engineer dll's especially the ones that are of OS and find out security flaws in the code and run bad programs on your computer.

To avoid reverse engineering of dll's to some extent. The program execution flow should be very random in a way it is not comprehensible. We can also add lot of obfuscated code to avoid reverse engineering. i.e. add garbage code to just confuse the people who are trying to reverse engineer.

- Anonymous October 10, 2010 | Flag Reply
Comment hidden because of low score. Click to expand.
0
of 0 vote

I think what they meant by reverse engineering dll's is that we can try to reverse engineer dll's especially the ones that are of OS and find out security flaws in the code and run bad programs on your computer.

To avoid reverse engineering of dll's to some extent. The program execution flow should be very random in a way it is not comprehensible. We can also add lot of obfuscated code to avoid reverse engineering. i.e. add garbage code to just confuse the people who are trying to reverse engineer.

- Anonymous October 10, 2010 | Flag Reply
Comment hidden because of low score. Click to expand.
0
of 0 votes

can not agree more, recent Indian graduate

- fckidn February 17, 2013 | Flag
Comment hidden because of low score. Click to expand.
0
of 0 vote

Run Strip command in linux which will remove all the debug info.

- Ashish June 18, 2013 | Flag Reply
Comment hidden because of low score. Click to expand.
0
of 0 vote

What I believe that is the correct answer is the following:

First of all, you cannot PREVENT anyone from reverse engineering a DLL, you can only make his/her life a bit harder, but if there's something that I learned for sure is that everything can be reverse engineered.

Few basic examples of methods of making people lives harder are:
* Remove all debug symbols
* Obfuscate symbols that you must export, also obfuscate strings
* contain an "encoded" blob of your code in the DLL, and load it on run time. Combined with anti-debugging methods it makes the reverser life a bit harder.

For all of the methods I mentioned there are "anti" methods, and these have "anti-ati" etc...

Bottom line, everything can be reversed. Algorithms are usually the hardest to reverse engineer from pure binary, but it's possible as well.

- TheDude March 19, 2016 | Flag Reply


Add a Comment
Name:

Writing Code? Surround your code with {{{ and }}} to preserve whitespace.

Books

is a comprehensive book on getting a job at a top tech company, while focuses on dev interviews and does this for PMs.

Learn More

Videos

CareerCup's interview videos give you a real-life look at technical interviews. In these unscripted videos, watch how other candidates handle tough questions and how the interviewer thinks about their performance.

Learn More

Resume Review

Most engineers make critical mistakes on their resumes -- we can fix your resume with our custom resume review service. And, we use fellow engineers as our resume reviewers, so you can be sure that we "get" what you're saying.

Learn More

Mock Interviews

Our Mock Interviews will be conducted "in character" just like a real interview, and can focus on whatever topics you want. All our interviewers have worked for Microsoft, Google or Amazon, you know you'll get a true-to-life experience.

Learn More