This is my review of the Cybrary course, Python for Security Professionals, First of all, I must say i appreciate the Cybrary.it model, the lessons are free and you can get a certificate of completion (which could help validate the 15 CPEs the course is worth, if you need to justify that form of thing) if you'd like at the end. However, the whole site model is interesting in as you are able to "complete" some of the courses (lol in fact, I've "completed" all of the courses), and purchase the relevant certificate, without ever having clicked some of the video links. That seemingly large security mistake kind of invalidates the certificates, as everyone can obviously say the've completed the course and have the certificate with out done so. All of this aside, I love the notion of free education material and we will now be delving into the information of the Python for Security Professionals course. Like my other reviews, I'm planning to go over the material and recommend this based in your experience and time commitment. The course contains 10 hours of video content, which are pretty decent especially if you want to learn Python from scratch, but slightly less when you want to learn the nuances of Information Security. All of the modules are video focused, but come with PDFs of slides, activities in python programs, and the completed answers to the activities in python programs. Overall, the initial four modules are extremely basic and mostly just cover programming in python vs security specific tasks. Another issue is that currently all the videos are pretty blurry and it's hard to read the code / command line found in the video series. For this reason you've to watch the videos in HD, nonetheless they address this in the comments and mention how they will be re-releasing the videos in a higher resolution. At the end of the weekend, I'd recommend this course to a person who is attempting to understand Python from scratch having an Information Security focus, but also for someone with an increase of of a background in Python, I'd actually recommend a text more like Black Hat Python, for more of an Information Security focus. That said, even though you are knowledgeable about Python and Information Security, you may find the final two modules interesting (The Packet Gathering Module and the Info Gathering Module).
The initial module, Intro and Setup, is pretty basic and be easily skipped if you have any prior Python experience. Here he explains just how to setup and install Python, as well as why it's an excellent language for rapid prototyping and security professionals.
The next module, Apprentice Python, can be very basic and still doesn't touch on anything security related. This module is about basic usage and arithmetic in Python. There is also a stumbling block in the 2nd video, as it's only a little odd when he googles for solutions and then reads stack overflow throughout the tutorial.
The Journeyman Python module is interesting, but nonetheless doesn't delve into anything necessarily Information Security specific. In this module he talks a lot about networking protocols and RFCs that govern these. These modules are interesting in that they're informative, but fairly incomplete in the info they relay, a good example of this could be when he starts referring to ports and protocols he doesn't differentiate which transport protocol the application protocols are traveling over, despite discussing the differences involving the TCP and UDP transport protocols. In this chapter you are shown you how to get in touch to arbitrary TCP ports, which could be helpful for banner grabbing. The final activity in this module teaches you how to hear a TCP port and thus create your own arbitrary file server, however these lack really any security controls.
With Advanced Python he covers ctypes, regular expressions, multi-threading, and finally fuzzing. The multi-threading exercise in this module is pretty interesting, but nonetheless nothing really advanced, just a quick launching of multiple independent threads (vs something that's to consider deadlocks). The fuzzing section can be pretty interesting as this can be quite a core Information Security technique, so I appreciate the videos for Slides part 3, jperry even alludes to a buffer overflow in this video. Unfortunately, he also says fairly uneducated things like fuzzing and password cracking are similar in theory (the means of bruteforce might be similar, but that hardly scratches the theory involved in either subject) or that writing a password cracker is against the CFAA, which is obviously false as industry professionals use password cracking constantly in penetration testing (trafficking hacked information or the specific act of hacking another person's system is illegal, not writing a password cracker). In this module's activities he also writes a fairly insecure file server implementation. I say it's insecure not since it lets you arbitrary read / write to a whole drive, but since it uses no authentication or encryption to safeguard the communications, meaning anyone could trivially hijack your fileserver activities.
Packet Analyzer module is where things get really cool. Partly two, jperry starts implementing an IP protocol parser and demonstrates bitwise manipulation to read exact fields from the protocol. This can be a pretty awesome tutorial for writing a network protocol parser in Python and something I'd truly call Python for Security Professionals. I recommend this section for those interested in getting a more thorough handle of protocols and automated parsers.
The Info Gathering module can be really interesting, as here jperry writes a fast post-exploitation RAT in Python for Windows. This is excellent and where the class really starts digginging in to the Python put on security specific applications. I really like where he uses python to parse the Windows registry key values, that is super helpful for various security applications. Overall, I do believe this is a pretty good Python for Security Professionals video. This module also covers all of the content from the Post Exploitation Hacking course in this script. I recommend this module for moderately experienced hackers looking to begin writing their own implants.
Overall, the modules were done well and I appreciate the relaxed approach of the course and exercises. That said, I do believe the entire course is perfect for someone trying to understand Python from scratch, however in the event that you already are a novice Python / Information Security enthusiast you must checkout something more like Black Hat Python, and even though you are well versed with Python and Information Security you may find the final two modules interesting. For Cybrary.it, I must say i appreciate what they are doing with free education, I do believe this is a great program and it deserves plenty of support, however I don't think the certifications are worth anything, on the basis of the not enough business-logic security preventing anyone from just acquiring the certificates and never having to have the course detail.
Comments
Post a Comment