Image
 
linkedin_logo.png rss_logo.jpg
twitter_logo.png youtube_logo.jpg
Latest Additions
 
EH-Net Login
Welcome Guest.






Lost Password?
No account yet? Register
Who's Online
We have 25 guests online
 
Advertisement

You are here: Home arrow Ethical Hacking Discussions and Related Certificationsarrow Programmingarrow What language should I learn first?
EH-Net
May 23, 2013, 08:17:26 AM *
Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
News: Go back to The Ethical Hacker Network Online Magazine Home Page
 
   Home   Help Calendar Login Register  
Pages: [1] 2   Go Down
  Print  
Author Topic: What language should I learn first?  (Read 20698 times)
0 Members and 1 Guest are viewing this topic.
PacketDicer
Newbie
*
Offline Offline

Posts: 7



View Profile
« on: May 23, 2011, 08:12:54 AM »

So i have no real programming knowledge under my belt.  I understand the basic constructs but have not had any real experience writing code. I have played around with C and VisualBasic a little but am dead set on starting to learn a language and start using it.  What is the group consensus? 
  • Should it be C, Perl, Ruby, VB or something else?
  • What would you recommend and why?
  • What exercises would you recommend in order to learn and fine tune programming ability?
  • Are there any websites that you would recommend that offer good tutorials or challenges? (and yes I know how to use google) Wink

Thanks for any suggestions..

Also, assembly language is of great interest to me but not sure where to start on that one.  Suggestions on that are appreciated as well.
Logged

CCENT / CCNA / Sec + / CEH / OSWP
millwalll
Guest
« Reply #1 on: May 23, 2011, 08:54:43 AM »

I think from a security point of view perl or python would be the best to learn first that way you can make quick scripts that are very useful and powerful.


http://wiki.python.org/moin/BeginnersGuide

http://infohost.nmt.edu/tcc/help/pubs/lang/pytut/

There is also some good video on you tube from google on python
Logged
MaXe
Hero Member
*****
Offline Offline

Posts: 669


I've just upgraded myself to a cyborg muahahaa!!1


View Profile WWW
« Reply #2 on: May 23, 2011, 09:18:50 AM »

This is how I would classify each area within InfoSec associated with languages:
- Web Application Security: PHP or ASP(x), additionally: HTML, CSS, JavaScript. (And other web technologies perhaps.)
- Buffer Overflows: Python is good for starters, if you don't like this, try Ruby or Perl.
- Code Review of Programs: C, C++, or perhaps even C# depending on the programs you're going to review. I'd suggest C and then C++, but that is just my humble opinion.
- Linux Automation: Bash (generally good for various tasks during pentesting.)
- Shellcoding: Assembly (IA32 for starters.) Check http://www.projectshellcode.com/

For most web application languages: w3schools
Python: There's so many resources and books about this, ask in IRC Smiley
Logged

I'm an InterN0T'er
PacketDicer
Newbie
*
Offline Offline

Posts: 7



View Profile
« Reply #3 on: May 23, 2011, 10:12:58 AM »

Thanks, very concise info.  I know some HTML and am starting to learn JavaScript.  I have an affinity to C just because it seems to be the birthplace of modern languages.  I suppose that I have my work cut out for me now.  I hadn't heard of the projectshellcode.com site.  Definitely looking forward to checking that out.  Python is a language that I have not yet researched but am looking forward to learning. 
Logged

CCENT / CCNA / Sec + / CEH / OSWP
MaXe
Hero Member
*****
Offline Offline

Posts: 669


I've just upgraded myself to a cyborg muahahaa!!1


View Profile WWW
« Reply #4 on: May 23, 2011, 10:53:10 AM »

If you want another nice guide, on how you could begin writing simple shellcode, try reading this:
http://intern0t.net/papers/Manual Shellcode.pdf

At the end of it, with perhaps a little research of your own, you should be able to play and understand assembly at the basic level  Smiley This paper also has some information about the use of assembly, but it is not directly about it: http://intern0t.net/papers/BPAV - InterN0T.pdf
« Last Edit: May 23, 2011, 10:59:43 AM by MaXe » Logged

I'm an InterN0T'er
chrisj
Hero Member
*****
Offline Offline

Posts: 1163


View Profile WWW
« Reply #5 on: May 23, 2011, 11:42:20 AM »

I've done several programming classes in college, but really don't write much code, so I usually have to relearn it all every time. (I remember basic concepts and only re-learn as much as I need to fix what ever itch I have to scratch).

That said. I'm Really enjoying Hello World. It's a book on python. It's really written for kids or other beginners, but I'm finding it a nice review. At least of programming concepts.

It has exercises at the end of the chapter to help refocus the learning.

I also like Learning Perl and Unix Shell Programming for the same reason.

Hit up the EH Amazon store (link in the side bar), Hello World is in the list there.

You could also get Dive in to Python free on the web.
Logged

OSWP, Sec+
PacketDicer
Newbie
*
Offline Offline

Posts: 7



View Profile
« Reply #6 on: May 24, 2011, 12:44:04 PM »

Thanks chrisj.  Just ordered the book.  Not to proud to realize that you've got to start somewhere....even if its at a kids level.  Looking forward to reading it.  Hope it doesnt disappoint.  Also ordered "Introduction to 80x86 Assembly Language and Computer Architecture"  to help me with my quest to learn assembly.   
Logged

CCENT / CCNA / Sec + / CEH / OSWP
WCNA
Full Member
***
Offline Offline

Posts: 187



View Profile
« Reply #7 on: May 24, 2011, 01:04:37 PM »

My 2 cents:

Python. There is going to be some good video tutorials coming soon on securitytube and on most of the challenges there, you needed to know python. It's also what scapy (a packet builder) was written with.

Other things you should at least be familiar with are bash scripting, html/php and sql commands.
Logged

ISC2 Associate, WCNA, CWNA, OSCP, Network+
PacketDicer
Newbie
*
Offline Offline

Posts: 7



View Profile
« Reply #8 on: May 25, 2011, 11:06:15 AM »

WCNA,
I have been doing a little bit of studying on SQL.  It was not as hard as I had originally thought.  I am now getting more interested in database structures.  HTML at its core has also proven to be fairly straight forward.   I have been meaning to learn some more PHP but as of yet have not had much use for it.  I am about to start learning some simple BASH scripting for the LINUX + cert which I plan on taking in about 3 weeks.  I will have to check out the videos that you are referring to.  I know nothing about Python but am eager to learn.

One of my biggest concerns is making sure that I understand the core concepts of programming.  It is my understanding that most programming languages are very similar if you do not take in to account syntax.  I want to build my knowledge from the ground up so to speak.  I am not a fan of "standing on the shoulders of giants".
Logged

CCENT / CCNA / Sec + / CEH / OSWP
millwalll
Guest
« Reply #9 on: May 25, 2011, 06:44:16 PM »

Yes once you have a good grasp it is usually easy to more to another Program. As they all have loops,if statements ,while loops and variables etc...



Logged
millwalll
Guest
« Reply #10 on: May 26, 2011, 10:50:19 AM »

Can anyone recommend any good books for C and C++??
Logged
MaXe
Hero Member
*****
Offline Offline

Posts: 669


I've just upgraded myself to a cyborg muahahaa!!1


View Profile WWW
« Reply #11 on: May 26, 2011, 12:12:46 PM »

Can anyone recommend any good books for C and C++??

if($option == 'C') {
$x = 'C';
} else {
$x = 'C++';
}

// OR perhaps like this: $x = ($option == 'C') ? 'C' : 'C++';
// It's been a few months since I used one-liner if-conditions but it should work  Grin (Note: That's PHP syntax I used.)

echo 'Search for this on Google: Learn '. $x .' in 21 days or similar.';


It isn't the most user-friendly guide, and there are real books as well.
Try: C Primer Plus or C++ Primer Plus, if that is what you want to learn.

Enjoy!  Wink
Logged

I'm an InterN0T'er
millwalll
Guest
« Reply #12 on: May 26, 2011, 02:30:33 PM »

$a = 'Thank';
$b = 'You';

echo $a + $b;

Logged
cd1zz
Hero Member
*****
Offline Offline

Posts: 561


View Profile WWW
« Reply #13 on: May 26, 2011, 07:03:56 PM »

Jamie - Just got that book (C++ Primer Plus). I like it so far!
Logged

xsurf
Newbie
*
Offline Offline

Posts: 13


View Profile
« Reply #14 on: May 26, 2011, 10:58:42 PM »

Hi


Try python is easy, clear, powerful and there are a lot of info in the web
Logged

CCNA, SND
Pages: [1] 2   Go Up
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines
Joomla Bridge by JoomlaHacks.com
Valid XHTML 1.0! Valid CSS!
Page created in 0.071 seconds with 23 queries.
 
Exclusive Deal

sansfire13_245x90_cw90.jpg
SANSFIRE 2013
June 15 - 22

5% Off w/ Code: EHN_5

SANS Deals 4 EH-Netters
5% OFF Any SANS Course in Any Format!
Coupon Code: EHN_5 Including SANS Rocky Mountain 2013 & SANS Boston 2013
Polls
Compared to this year, 2013 will be:
 
Recent Forum Topics
EH-Net News Feeds
Latest Additions
 
         
Advertisement

© 2013 The Ethical Hacker Network
Joomla! is Free Software released under the GNU/GPL License.