• XSS.stack #1 – первый литературный журнал от юзеров форума

Дайте сурсы любого рата c++

repository

RAID-массив
Пользователь
Регистрация
13.03.2024
Сообщения
71
Реакции
-1
я начал изучать c++ хочу попросить дать сурсы не сильно сложного rat на этом яп.
мне сверх рат не надо какой-то простой для изучения и его обновления под себя чтобы понять его строения и как им пользоваться.
 
Пожалуйста, обратите внимание, что пользователь заблокирован
Нет нормальных ратников на плюсах, ну по крайней мере на гитхабе я встречал только говнокод. Тут была незавершенная статья , конкурс статей от локбита ищи.
 
я начал изучать c++ хочу попросить дать сурсы не сильно сложного rat на этом яп.
мне сверх рат не надо какой-то простой для изучения и его обновления под себя чтобы понять его строения и как им пользоваться.
Ты для начала внятно ответь для чего именно ц++ и чем тебе поможет говнокод. Чему хорошему ты из него научишся. Например найти нормальный код на ц в сто раз легече чем на плюсах, потому что плохая процедурщина в сто раз лучше плохо написанного ооп. А хорошо написанный маловаро код на плюсах днем с огнем, просто потому что те кто хорошо умеют писать на плюсах не пишут малвары а если и пишут то не выкладывают.
 
написанного ооп
Думается, тэс процедурку и имел в виду, просто компилятор плюсовской юзает. Ну и всякие там using namespace std.

мне сверх рат не надо какой-то простой для изучения и его обновления под себя чтобы понять его строения и как им пользоваться.
Действительно, зачем сорс, если ты хочешь понять, как работает рат? Каждый по-своему пишет. Открой аверский анализ какого-нить ратника и попробуй написать/повторить - пользы в сто раз больше будет, чем будешь чужой код лопатить.
 
Ты для начала внятно ответь для чего именно ц++ и чем тебе поможет говнокод. Чему хорошему ты из него научишся. Например найти нормальный код на ц в сто раз легече чем на плюсах, потому что плохая процедурщина в сто раз лучше плохо написанного ооп. А хорошо написанный маловаро код на плюсах днем с огнем, просто потому что те кто хорошо умеют писать на плюсах не пишут малвары а если и пишут то не выкладывают.
мне челы сказали на c++ лучше всего писать ратки на чем тогда лучше всего писать?
 
Пожалуйста, обратите внимание, что пользователь заблокирован
мне челы сказали на c++ лучше всего писать ратки на чем тогда лучше всего писать?
На плюсах, но это - реально пиздец как не легко.
Ц - это просто, но за эту простоту придется платить.
Ц с классами уже сложнее, ты обязательно разведешь грязь в инкапсуляции, обосрешся с наследованиями и напишешь уродское говно которе сам будешь с трудом понимать, и как то его поддерживать будет адом.
Ц++ ты разведешь адский срач в коде, утонешь в багах и крешах, причину которых будет искать очень трудно. Плюсы это самый сложный язык из всех, малваро кодинг ему добавляет сложности потому что требует полиморфизма везде, в зависимости например от ав ты должен будешь менять способ достижения одних и тех же целей.
Лучше тебе писать на том с чем справишся.
 
на vx-underground глянь билды, реверс проведи, статьи почитай, сделай выводы, выше тебе написали про выбор языка, лучше иди по пути наименьшего сопротивления, вообще посоветую начинать с c# он попроще, а потом уже на С, у Quake3 есть статья прекрасная по малвари кодинг, почитай, вообщем что то свое стоящее создать нужны годы, будь готов к этому
 
Сегодня игрался с gpt, попросил написать для меня код ратника на C, вот что получилось.
Если кто-то понимает, скажите пожалуйста этот код в принципе нормальный? Можно ли его довести до ума?


#include <stdio.h>
#include <string.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <unistd.h>
#include <stdlib.h>

#define MAX_CLIENTS 30
#define MAX_CLIENTS_SUPPORTED 500
#define PORT 52120

// RAT server structure
typedef struct {
int port;
int maxClients;
int clientCount;
struct sockaddr_in serverAddr;
struct sockaddr_in clientAddr;
int sockListen;
int sockClients[MAX_CLIENTS_SUPPORTED];
} RAT;

// RAT server constructor
void RAT_init(RAT* rat) {
rat->port = PORT;
rat->maxClients = MAX_CLIENTS;
rat->clientCount = 0;
memset(&rat->serverAddr, 0, sizeof(rat->serverAddr));
memset(&rat->clientAddr, 0, sizeof(rat->clientAddr));
rat->sockListen = 0;
}

// Start the server listening to the specified port
void RAT_startListening(RAT* rat) {
if ((rat->sockListen = socket(AF_INET, SOCK_STREAM, 0)) < 0) {
perror("Error creating socket");
exit(1);
}

rat->serverAddr.sin_family = AF_INET;
rat->serverAddr.sin_port = htons(rat->port);
rat->serverAddr.sin_addr.s_addr = INADDR_ANY;

if (bind(rat->sockListen, (struct sockaddr*)&rat->serverAddr, sizeof(rat->serverAddr)) < 0) {
perror("Error binding socket");
exit(1);
}

if (listen(rat->sockListen, rat->maxClients) < 0) {
perror("Error listening to socket");
exit(1);
}
}

// Handles a new client connection and sets up a new socket
void RAT_handleClient(RAT* rat, int s) {
if (rat->clientCount < MAX_CLIENTS_SUPPORTED) {
rat->sockClients[rat->clientCount] = s;
rat->clientAddr.sin_family = AF_INET;
socklen_t clientLen = sizeof(rat->clientAddr);
getpeername(s, (struct sockaddr*)&rat->clientAddr, &clientLen);
printf("New client: %s\n", inet_ntoa(rat->clientAddr.sin_addr));
rat->clientCount++;
} else {
printf("Max clients limit reached\n");
}
}

int main() {
RAT rat;
RAT_init(&rat);
RAT_startListening(&rat);
int clientSocket;
socklen_t clientLength = sizeof(rat.clientAddr);
clientSocket = accept(rat.sockListen, (struct sockaddr*)&rat.clientAddr, &clientLength);

if (clientSocket < 0) {
perror("Error accepting client connection");
exit(1);
}

RAT_handleClient(&rat, clientSocket);
close(clientSocket);

return 0;
}
 
Сегодня игрался с gpt, попросил написать для меня код ратника на C, вот что получилось.
Если кто-то понимает, скажите пожалуйста этот код в принципе нормальный? Можно ли его довести до ума?


#include <stdio.h>
#include <string.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <unistd.h>
#include <stdlib.h>

#define MAX_CLIENTS 30
#define MAX_CLIENTS_SUPPORTED 500
#define PORT 52120

// RAT server structure
typedef struct {
int port;
int maxClients;
int clientCount;
struct sockaddr_in serverAddr;
struct sockaddr_in clientAddr;
int sockListen;
int sockClients[MAX_CLIENTS_SUPPORTED];
} RAT;

// RAT server constructor
void RAT_init(RAT* rat) {
rat->port = PORT;
rat->maxClients = MAX_CLIENTS;
rat->clientCount = 0;
memset(&rat->serverAddr, 0, sizeof(rat->serverAddr));
memset(&rat->clientAddr, 0, sizeof(rat->clientAddr));
rat->sockListen = 0;
}

// Start the server listening to the specified port
void RAT_startListening(RAT* rat) {
if ((rat->sockListen = socket(AF_INET, SOCK_STREAM, 0)) < 0) {
perror("Error creating socket");
exit(1);
}

rat->serverAddr.sin_family = AF_INET;
rat->serverAddr.sin_port = htons(rat->port);
rat->serverAddr.sin_addr.s_addr = INADDR_ANY;

if (bind(rat->sockListen, (struct sockaddr*)&rat->serverAddr, sizeof(rat->serverAddr)) < 0) {
perror("Error binding socket");
exit(1);
}

if (listen(rat->sockListen, rat->maxClients) < 0) {
perror("Error listening to socket");
exit(1);
}
}

// Handles a new client connection and sets up a new socket
void RAT_handleClient(RAT* rat, int s) {
if (rat->clientCount < MAX_CLIENTS_SUPPORTED) {
rat->sockClients[rat->clientCount] = s;
rat->clientAddr.sin_family = AF_INET;
socklen_t clientLen = sizeof(rat->clientAddr);
getpeername(s, (struct sockaddr*)&rat->clientAddr, &clientLen);
printf("New client: %s\n", inet_ntoa(rat->clientAddr.sin_addr));
rat->clientCount++;
} else {
printf("Max clients limit reached\n");
}
}

int main() {
RAT rat;
RAT_init(&rat);
RAT_startListening(&rat);
int clientSocket;
socklen_t clientLength = sizeof(rat.clientAddr);
clientSocket = accept(rat.sockListen, (struct sockaddr*)&rat.clientAddr, &clientLength);

if (clientSocket < 0) {
perror("Error accepting client connection");
exit(1);
}

RAT_handleClient(&rat, clientSocket);
close(clientSocket);

return 0;
}
Рат? Просто сервер для линукса, который один раз выводит ip клиента и закрывается.
 
я начал изучать c++ хочу попросить дать сурсы не сильно сложного rat на этом яп.
мне сверх рат не надо какой-то простой для изучения и его обновления под себя чтобы понять его строения и как им пользоваться.
изучать C++ с рат плохая идея! Основы. Основы. и еще раз основы. Без основ ты банально не разберешься в многопотоке, или даже ооп коде. Любой программист(хороший) применяет ооп, ты при плохой базе не поймешь как работает перегрузка, виртуальные функции и тд. Посоветовал бы с litcode что-то попробовать, выполнить какую-то лабу/практическую задачу. Это если конечно нету опыта из шарпа/джавы
 
изучать C++ с рат плохая идея! Основы. Основы. и еще раз основы. Без основ ты банально не разберешься в многопотоке, или даже ооп коде. Любой программист(хороший) применяет ооп, ты при плохой базе не поймешь как работает перегрузка, виртуальные функции и тд. Посоветовал бы с litcode что-то попробовать, выполнить какую-то лабу/практическую задачу. Это если конечно нету опыта из шарпа/джавы
что лучше всего начать учить для малваринга? писать раты ситиллеры и тд?
 
Пожалуйста, обратите внимание, что пользователь заблокирован
уже снесли, или же мне просто не хватает там прав
кому не сложно выложите куда нибудь
Прошу прощения там нужны определенные права для доступа
 

Вложения

  • Predator_Source (1).zip
    627.5 КБ · Просмотры: 37
Интересно автор этого чудо кода знал какие механизмы обеспечивают работу обработку исключений.
Кто то вообще видел малвару с собственной реализацией RtlRaiseException? А еще лучше со своим рантаймом который может и эксепшены.
В общем и целом сорцы говно.
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх