Welcome to scripting languages brought to you by IBM. In this video, Raul from IBM security will be taking us to the different scripting languages. Okay. JavaScript is an object oriented scripting language. Was developed in 1995 by Netscape Communications. Now, Netscape Communications was very close to Sun Microsystems at that time. Sun Microsystems was one of the biggest backers of the Java programming language. Web pages at that time were very plain and even animated gifs were in development. So to perform a series of behaviors that will allow pages to be more interactive and a scripting language had to be developed. So Netscape took the banker and they spearheaded the creation of this scripting language. Now, JavaScript was designed to be run in almost every environment. It's light-weighted, it's protected. It won't allow people to use or share resources with the server. The programming language does not allow any input-output, such as networking storage between the server and the client machine. Basically, what it will run, it will on the client machine and keep it as some, we can call it, the prison environment. Variables in JavaScript can be defined using the var word or a constant. We can also let name of the variable that we'll declare the variable. We can assign the variable with a number or any value. We can use let y equals IBM, and that will be the value inside of the variable. Or we can even declare a full string. Let y equals, "Hello, World". Please check that any text is declared between our brackets, and the definition has to end with a semicolon. Bash scripting. Bash is a shell created for Unix. A shell is basically the program that allow us to communicate with the operated system. Bash includes any scripting interpreter that will allow us to create the small single programs to perform a whole variety of functions. If we want to create a list of users in Unix, we can create the bash script that will create them for you. An example, variables in bash are pretty simple. We just write the name of the variable, the equal symbol, and then we assign a value. That's it. Afterwards, what do we do to reference a variable? We call it with the dollar sign symbol. Afterwards, inside of our script, we can create as many variables we want and then we just call them inside of the script. Perl is a scripting language created in 1987. It's used for a scripting between a client-server. There's a lot of issues that they prefer. Especially in web pages. It creates very interesting functionality and it ripples JavaScript in force. It's a little bit more complicated, but the Perl evangelists are very loyal to the language, and there is a lot of resources on the Internet if you want to learn about Perl. Just as Bash, variables in Perl do not need to be declared. The difference is, when we're declaring a variable in Perl, we have to use the dollar sign to tell the interpreter that we are going to use a Perl PowerShell. Windows did not use any scripted language until 2016. That is almost a good 20-30 years through the other operative systems. So PowerShell is basically an interpreter that is run on.NET that will allow us to perform basic scripts in Windows. We can perform file operations, we can perform even network operations. Binary code is what we call machine language. Is what the compiler will do to any programming language. Actually, a scripting in binary is no easy task, and is done a specifically for certain tasks. Binary scripting is using mostly in telecommunication and in binary encoding when we are writing CDs and DVDs, or when we are cloning any storage system. The ideal binary is there are only two states, zero and one, and this basic memory to restore this state is the smallest type in computing is the bit. So in transmission, in data transmission, the bit is the measure to calculate that of transmission bits. So as you may see, this is not a language that you will be using most of the time. The idea to add a binary payload into a shell script will be to use a smaller packet to overwrite a library or a file in a program you either wrote or you are updating. But this is also, this is also done by using hexadecimal scripting, which is easier to read and write, which is where we're going right now. Hex scripting. Hexadecimal scripting is mostly mathematical. It's an easier way to read machine language, and is used mostly when you're updating a software, overwrite numbers is faster than decrypting the machine code we already compiled, make the change and recompile it. Most software companies update your software by overriding the hex numbers in the files. So can be done, also it can be used to monitor some values and get to know which are some changes that the program is doing in memory and for troubleshooting and debugging. Is very unlikely that the average computer engineer will be using hexadecimal code most of the time, unless you are a very specialized debugger or you're an app programmer debugging app execution program, something like that. That's what I can tell about hex scripting.