Hacking Articles Tips Tricks Videos Tutorials
468 subscribers
65.9K photos
15 videos
157 files
132K links
Exploit
Pentesting
Hacking
Red Team
Blue Team
Kali Linux
Bug Bounty
Black Hat
Cyber security etc

@Hacking_Video
@Hacking_attack
Download Telegram
RCE docker api, but …

This is a short write up and to be honest “lazy” to write this.Continue reading on Medium »
Read more...
The Top 6 Bug Hunters With $1M+ Net Bounties

TL;DR- There are only a handful of hunters who have passed $1,000,000 in total bounty payouts, the first of them barely out of high school…Continue reading on The Gray Area »
Read more...
Bug Zero at a Glance [Week 22–28 October]

What happened with Bug Zero?Continue reading on Bug Zero »
Read more...
KitPloit - PenTest Tools!
Sandman - NTP Based Backdoor For Red Team Engagements In Hardened Networks

https://blogger.googleusercontent.com/img/a/AVvXsEgojLgd6sJR_TeNcazI5aPkQwckwIr_3-PCUhF6PXGkwVB9Lej80_ciLS0tK2LrUGVDOPl2C-j8eoYpcZGdT0zyklHu1IjRZmdWysuVBw91kmbQ2kWZR2nJ_7lhea417b22apQ-kXEU3QYNCvk-XcuA_N23Peog566GqAvQlCU9YPmqBisQeUr9jgVFsA=w640-h388 Sandman is a backdoor that is meant to work on hardened networks during red team engagements.

Sandman works as a stager and leverages NTP (a protocol to sync time & date) to get and run an arbitrary shellcode from a pre-defined server.

Since NTP is a protocol that is overlooked by many defenders resulting in wide network accessibility. UsageSandmanServer (Usage)Run on windows / *nix machine: python3 sandman_server.py "Network Adapter" "Payload Url" "optional: ip to spoof"*
Network Adapter: The adapter that you want the server to listen on (for example Ethernet for Windows, eth0 for *nix).

*
Payload Url: The URL to your shellcode, it could be your agent (for example, CobaltStrike or meterpreter) or another stager.

*
IP to Spoof: If you want to spoof a legitimate IP address (for example, time.microsoft.com's IP address). SandmanBackdoor (Usage)To start, you can compile the SandmanBackdoor as mentioned below, because it is a single lightweight C# executable you can execute it via ExecuteAssembly, run it as an NTP provider or just execute/inject it. SandmanBackdoorTimeProvider (Usage)To use it, you will need to follow simple steps:

* Add the following registry value: reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient" /v DllName /t REG_SZ /d "C:\Path\To\TheDll.dll"* Restart the w32time service: sc stop w32time
sc start w32time
NOTE: Make sure you are compiling with the x64 option and not any CPU option! Capabilities*
Getting and executing an arbitrary payload from an attacker's controlled server.

*
Can work on hardened networks since NTP is usually allowed in FW.

*
Impersonating a legitimate NTP server via IP spoofing. SetupSandmanServer (Setup)*
Python 3.9

*
The requirements are specified in the requirements file. SandmanBackdoor (Setup)To compile the backdoor I used Visual Studio 2022, but as mentioned in the usage section it can be compiled with both VS2022 and CSC. You can compile it either using the USE_SHELLCODE and use Orca's shellcode or without USE_SHELLCODE to use WebClient. SandmanBackdoorTimeProvider (Setup)To compile the backdoor I used Visual Studio 2022, you will also need to install DllExport (via Nuget or any other way) to compile it. You can compile it either using the USE_SHELLCODE and use Orca's shellcode or without USE_SHELLCODE to use WebClient. IOCs*
A shellcode is injected into RuntimeBroker.

*
Suspicious NTP communication starts with a known magic header.

*
YARA rule. Contributes* Orca for the shellcode.

*
Special thanks to Tim McGuffin for the time provider idea.
Thanks to those who already contributed and I'll happily accept contributions, make a pull request and I will review it! Download Sandman

___________________________
@hacking_Attack
@Hacking_Video
Practical Dynamic Analysis Of Mobile Applications

Hands-on Practical Dynamic Analysis Of Mobile ApplicationsContinue reading on Medium »
Read more...
eLearnSecurity or GIAC
https://www.reddit.com/r/Pentesting/comments/yg16gi/elearnsecurity_or_giac/

If you had the money or someone else was paying for your certifications, what path would you take in case you wanted to become a pentester. eLeanSecurity certs and OSCP. GIAC (GSEC, GCIH, GPEN) and OSCP. 1 or 2, make your choice and why. submitted by /u/PLucaMe (https://www.reddit.com/user/PLucaMe)
[link] (https://www.reddit.com/r/Pentesting/comments/yg16gi/elearnsecurity_or_giac/) [comments] (https://www.reddit.com/r/Pentesting/comments/yg16gi/elearnsecurity_or_giac/)

___________________________
@hacking_Attack
@Hacking_Video
Kali Linux Tutorials
How to Install and Run Rust on Linux

There are many programming languages available when you want to start writing code, but Linux users should consider Rust. It has a thriving community and is reliable and quick. In this tutorial, we’ll walk you through how to install Rust on a Linux computer and offer some guidance on using it. Use in LinuxThere are many rust use cases in Linux, including:

•    System Programming

•    Embedded systems

•    Game development

•    Server-side web development Starting with the installationYou can find the download link on the official website of Rust. When writing this article, the latest stable version is 1.40.0.

Download the file using the following command:

curl https://sh.rustup.rs -sSf | sh

It will start the installation process. It will download and install rustup, which is the official installer for Rust.

Once the installation is completed, you can verify it by checking the version of Rust installed:

rustc –version

You should see the following output:

rustc 1.40.0 (5e1a79984 2020-05-13)

For Rust install on Linux, you’ll need to ensure that your computer:

•    Has the correct kernel headers installed; These help your compiler talk to the kernel. You can confirm this by running uname -r. The kernel headers for your running kernel version must be installed. For example, if your running kernel is 3.13.0-24-generic, you need the linux-headers-3.13.0-24-generic package installed

•    Has GCC installed; This is the default C compiler on most Linux distributions. You can confirm this by running gcc –version. If it is not installed, you can install it using your distribution’s package manager

•    Has make installed; This is required for building most software from source. You can confirm this by running make –version

For rust install Ubuntu, you first need to add the PPA for rustup:

sudo apt-add-repository ppa:rust-lang/rust

Then update your package repositories and install rustup:

sudo apt update && sudo apt install rustup -y

Once the installation is completed, you can verify it by checking the version of Rust installed:

rustc –version

You should see the following output:

rustc 1.40.0 (5e1a79984 2020-05-13) Test Rust programming language in LinuxAfter installation of Rust, it’s time to test if it is working properly or not. Here are examples you can try:

•    Print “Hello, world!”

•    Calculate the surface area of a sphere

•    Create a guessing game

Let’s start with printing “Hello, world!”. Create a new file named “hello.rs” in any text editor and type in the following code:

“`Rust

fn main() {

println!(“Hello, world!”);

}

“`

Save the file and in your terminal, navigate to the directory where “hello.rs” is saved. Then type “rustc hello.rs” to compile the code. This will create an executable file named “hello”. Run it by typing “./hello”. You should see “Hello, world!” printed on the screen.

Now let’s try something more challenging – calculate the surface area of a sphere. Create a new file named “sphere.rs” and type in the following code:

“`Rust

fn main() {

let radius = 3.0; // Radius of the sphere

let surface_area = 4.0 * std::f64::consts::PI * radius.powi(2); // Calculate the surface area

println!(“The surface area of the sphere is {}”, surface_area);

}

“`

Compile and run the code as before. You should see the surface area printed on the screen.

An example:

You are presented with a random number between 1 and 100. You have 10 attempts to guess the number. After each attempt, you are told if your guess was too high or low. If you guess correctly within the 10 attempts, you win! Otherwise, you lose.

To start, let’s create a new file called “guessing_game.rs” and add the following code:

fn main() {

println!(“Guess the number!”);

println!(“Please input your guess.”);
[...]

___________________________
@hacking_Attack
@Hacking_Video
Hacking Articles Tips Tricks Videos Tutorials
Kali Linux Tutorials How to Install and Run Rust on Linux There are many programming languages available when you want to start writing code, but Linux users should consider Rust. It has a thriving community and is reliable and quick. In this tutorial, we’ll…
let mut guess = String::new();

std::io::stdin()

.read_line(&mut guess)

.expect(“Failed to read line”);

println!(“You guessed: {}”, guess);

}

This is a simple program that prints out a welcome message, then waits for the player to input their guess.

The program stores the player’s input as a string in the “guess” variable.

Next, we need to convert the player’s guess from a string to a number so that we can compare it to the random number.

Add the following code after the “let mut guess = String::new();” line:

let guess: u32 = match guess.trim().parse() {

Ok(num) => num,

Err(_) => continue,

};

This code uses the “match” keyword to attempt to convert the player’s guess to a number.

If the conversion is successful, the number is stored in the “guess” variable.

If the conversion fails (for example, if the player inputs a letter instead of a number), the program will “continue” to the next iteration of the loop.

This allows the player to try again without ending the game.

Next, we need to generate the random number that the player will try to guess.

Add the following code after the “let guess: u32 = match guess.trim().parse() {” line:

let secret_number = rand::thread_rng().gen_range(1, 101);

This code uses the “rand” crate to generate a random number between 1 and 100.

The number is stored in the “secret_number” variable.

Now that we have the player’s guess and the secret number, we can compare them to see if the player has won or lost.

Add the following code after the “let secret_number = rand::thread_rng().gen_range(1, 101);” line:

if guess == secret_number {

println!(“You win!”);

} else {

println!(“You lose!”);

}

If the player’s guess is equal to the secret number, the program will print “You win!” Otherwise, the program will print “You lose!”.

Congratulations! You’ve written your first Rust program. Create a new Rust projectOpen a terminal on Linux and type the following command to start a new Rust project:

cargo new myproject

By doing this, a new directory called myproject will be created, containing all the files required to launch a fresh Rust project. To build and run your project, change into the myproject directory and enter the following command:

cargo run

This will compile your code and then run the resulting executable. If everything goes well, you should see the following output:

Hello, world!

Now that you know how to install and run Rust on Linux, try writing some code of your own. There are many resources available online to help you get started with Rust programming in Linux. These include:

•    The official Rust documentation

•    The Rust subreddit

•    The Rust user forum

•    The IRC channel #rust on irc.mozilla.org

A Rust lang update:

If you want to update Rust lang, enter the following command in terminal: rustup update

This will update Rust to the latest stable version. An update typically comes every 6 weeks. The latest version is 1.27.2 . You need to have a compatible Linux kernel or build it from the source. If your machine doesn’t have a supported Linux kernel, you can install one.

With this install rust linux guide, you should have no trouble getting started with Rust programming in Linux. Happy coding.

___________________________
@hacking_Attack
@Hacking_Video