Jak mohu použít RAW Sockets v Ruby?

hlasů
3

Snažím se vytvořit raw socket pomocí Ruby.

Problém je v tom, že není něco s názvem „raw socket“ tam, a na druhé straně samotná Socket třída není plně zdokumentován.

Má někdo nějaké ukázky kódu pro tento druh zásuvky v Ruby, nebo možná nějaký druh dokumentace pro to?

Mimochodem, už vím, jak pracovat s TCPSocket a tcpserver tříd, a to, co potřebuji, je obzvláště surový socket.

Položena 28/08/2009 v 02:09
zdroj uživatelem
V jiných jazycích...                            


3 odpovědí

hlasů
2

Google přináší následující výsledky: http://www.ruby-forum.com/topic/90408

Krátká verze:

require 'socket'

rsock = Socket.open(Socket::PF_INET, Socket::SOCK_RAW, Socket::IPPROTO_RAW)

rsock.send(string, flags)

rsock.recv(1024)

Další dokumentace o různých tříd Socket: http://www.rubycentral.com/pickaxe/lib_network.html

(Celá raw socket věc je spíše ošklivý na Unixech protože to obvykle vyžaduje práva roota. Nechtěl jsem testování tohoto kódu. Možná budete muset postavit celému paket sami, pokud nejste s použitím IPSocket)

Odpovězeno 28/08/2009 v 19:57
zdroj uživatelem

hlasů
1

Podívejte se na rakety gem ( https://rubygems.org/gems/racket ). Zdá se, že trochu zastaralé, protože poslední verze byla vydána v roce 2009, ale jeho také použit v Metasploit rámce.

Odpovězeno 25/03/2011 v 17:21
zdroj uživatelem

hlasů
2

Podívejte se na PacketFu . To je velmi dobře udržované a používané Metasploit Project.

Odpovězeno 06/05/2012 v 22:38
zdroj uživatelem

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more