当前位置:  技术问答>linux和unix

请问高手,如何伪造数据包

    来源: 互联网  发布时间:2015-07-30

    本文导语:  我将数据从一台机器传到另外一台机器上去,为了提高效率,我不想通过tcp ip来传送,相直接在内核中伪造数据包 ,通过网卡来传送。但是我现在不知如何来伪造数据包 ,各位有什么好的建议,望告之,谢谢 ...

我将数据从一台机器传到另外一台机器上去,为了提高效率,我不想通过tcp ip来传送,相直接在内核中伪造数据包 ,通过网卡来传送。但是我现在不知如何来伪造数据包 ,各位有什么好的建议,望告之,谢谢

|
libnet used in user mode

read this book:

《Building Open Source Network Security Tools: Components and Techniques》

send packet from kernel mode, see khttpd implementation 
u can find its source code in /linux/net/khttpd/

good luck


|
楼主,你可以去这里
http://www.kernelnewbies.org/documents/
找到资料,这里有讲khttpd的结构,并用同样方法实现了一个kftpd
注意,采用的方法是比较上层的,就是sock_sendmsg()和sock_revmsg()
你可以去找一份叫Linux Network Implementation的文档,上面有整个流程,很清晰,你要么采用和khttpd一样方法,要么操纵sock缓冲区sk_buff,用output发

这是文档上的:
write(socket, data, length)
sys_write( )
sock_write( )
sock_sendmsg( )
inet_sendmsg( )
tcp_sendmsg( )
tcp_send_skb( )
tcp_transmit_skb( )
ip_queue_xmit( )
dev_queue_xmit( )
ei_start_xmit( )

我还有三份从kernel里以两种方式发送数据包的例子,都是操纵sk_buff的,你留下email,我把东西一起发给你就完了

|
Iyou must use tcp session, host spoofing is not easy, 'cause you have complete the 3-way handshake(Can you guess the SYN number from your target without the second packet not reaching you).
I recommend to use UDP or ICMP instead.
Libnet is a good library to write packet-based program, version 1.0.x and 1.1.x are quite different, so pay attention.
You can also use RAW SOCKET if you're not lazy. :)

|
用sniffer之类的软件直接抓包修改重发。

|
如果只是普通的应用程序,使用原始套接字sock_raw试试

|
利用socket,构造数据报,其中的源IP地址你可以修改。
构造数据报的过程可以在内核中实现
但是传输一定要靠协议
所以是不可以提高传输速率的
瓶颈没有避免
我原来做过一个利用别人IP完成net send命令的程序

|
误导,绝对是误导。
net send又不是基于TCP的。

    
 
 

您可能感兴趣的文章:

  • 请问高手在linux中用什么命令可以做linux的启动盘???在等待高手??
  • 请问玩过SOLARIS的高手门,在不正常关机后,就不能启动到windows公用桌面了,只能在命令提示模式下了,请问怎么解决这个问题啊?急~!~!
  • 请问诸位高手:如何在服务器上得到正在连接的客户端IP??
  • java高手,请问BDK在那儿下载?
  • 请问高手们,怎样把int 转换成String 型
  • 请问高手,内核升级到2.6以后,rpm的问题解决了吗?
  • 请问哪位高手知道在Linux下怎么开发C#?
  • 请问哪位高手可以帮我远程看看Fedora的安装
  • 各位高手,请问这个是什么情况,CPU100%
  • 请问高手们,有没有一款工具可以测试内核内存泄露的?
  • 请问Java高手,Java的优势在那里??,Java主要适合于开发哪类应用程序
  • 请问各位高手,如何在c shell中从标准输入读参数然后赋给一个变量啊
  • 请问高手有关makefie!!!!
  • 急求高手!请问怎样用c产生6位随机密码,急!
  • 请问各位高手,如何用linux系统无先上网呢
  • 请问高手如何在linux环境中获取bios时间,在线等待,急
  • 请问高手:web中如何把多选的select表单中的数据提交到servlet中?(在线等)
  • 请问高手 javabean 与 weblogic 的问题!!!!!!
  • 请问高手:我想用applet调用一个本地的exe。怎么办?
  • 请问高手___redhat7.3安装问题
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 请问Linux数据库编程是否也可以支持通用的SQL语言进行数据库编写.
  • 急,请问数据流是经过zip压缩的,Linux下如何编程,解开压缩的数据流?
  • 请问那里有SYBASE的jbdb 2.0下载;jspsmartupload可以直接将文件上传到数据库,请问如何使用
  • 请问,如果连接一个Mssql的数据库。并操作里面的数据。谢谢了:)
  • 请问谁有Applet连接远程Access数据库并且显示数据库内容的例子!
  • 请教:请问java中存放数据库中的记录,用什么数据结构?(hashtable?vector?还是别的?)
  • 请问:ORACLE中的数据取出来后,需不需要进行一定的转换才能变为C语言的数据类型啊?
  • 请问如何查询数据库(注意:不是数据表)?
  • 散分:Jbuilder6开发数据库应用请问你们都用什么数据库? 免费的数据库有那些?
  • 请问在java钟如何得到数据库中的记录总数,以及如何求数据库中一个字段的和?
  • 现在我要画一个数据流程图,请问怎么画?我没有数据流程图的符号。
  • 请问各位朋友:在JAVA的数据库应用管理系统中,如何不在操作系统忠建立数据源便能连接数据库(如ACCESS、MS SQL 等等
  • 请问什么叫做“数据字典”???
  • 请问,如何在作数据备份的时候,对打包的数据文件自动加密?然后这个密码又如何加密呢?
  • 请问以下操作系统的数据模型怎么查
  • 请问有什么方法直接从网卡取数据??
  • 请问网络连接断开,如何让数据在联网后连续发送?
  • 初学JAVA,请问各位哪本数据结构(JAVA版)比较好?
  • 请问怎样把数据发送到网页?
  • 请问如何设计tcp数据包啊??
  • 请问:我知道路由器的telnet密码,但忘记了enable 密码,请问如何是好?
  • 请问最新的reahat9.0是基于什么核心的?2.4?2.6?请问那里能下载?
  • 请问:请问哪里有关于linux基本操作命令讲解的资料下载,最好是幻灯片格式的.
  • 请问,我试图用#admintool&图形工具命令来安装sun workshop5.0,为什么进入的却是用户管理界面?请问具体该如何在solaris下安装应用软件
  • 请问在Redhat 9里,我从登录就是图形介面,请问如何在图形介面内进入命令行方式呢,谢谢
  • 请问:我在redhat下装了bochs-2.2.1-1.rpm,.装了后,想设置一下,但找不到bochsrc.fda.bxrc,请问这个文件在哪个曰录下啊。
  • 请问:在配置Qt时,很多文档都说在.profile,.login里加东西,但是我好像没有发现有这两个文件上,请问这些文件在哪个目录下啊
  • 请问:在GCC里的C程序里的变量的声明是不是只能在前面,而且相同类型的变量的声明只能放在一起?如果不是,请问怎么样可以解决这个问题.
  • 请问各位大虾,小弟今天开始学jsp了,这学期我们有java课,所以已经下载了jdk(好象是1.2),请问我的98环境怎么配置jsp环境呀?我的jdk可以运行.java程序,别的我就不知道了....谢谢!
  • 主机是WIN2000,我用的是LUNIX,请问是否可以共享上网? 如果可以请问如何设置? 500分答谢,龟儿食言!
  • 请问linux下GUI开发的问题!


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3