一种端口防扫描方法、系统、及一种电子装置的制造方法

文档序号:9399273阅读:270来源:国知局
一种端口防扫描方法、系统、及一种电子装置的制造方法【
技术领域
】[0001]本发明涉及通信
技术领域
,特别是涉及一种端口防扫描方法、系统、及一种电子装置。【
背景技术
】[0002]随着网络的不断发展,路由器作为现在商铺以及家庭网络终端的对外接口,安全问题越来越受到别人的重视,外部的技术手段越来越先进,以前的技术越来越难防住现在的外部攻击,端口扫描的意思是指外部通过扫描家庭或者商铺路由器判断是开启了哪些端口,哪些端口开启就可以判断是开启哪些服务,发现开启哪些服务就可以获取对方的信息,目前的解决方案通常为配置iptables命令来实现防端口扫描功能,但是这个功能模块实现起来不够灵活,所以需要一种更灵活的端口防扫描的实现方案。【
发明内容】[0003]鉴于以上所述现有技术的缺点,本发明的目的在于提供一种端口防扫描方法、系统、及一种电子装置,用于解决现有技术中不能灵活高效的防止端口扫描的问题。[0004]为实现上述目的及其他相关目的,本发明提供一种端口防扫描方法,所述方法包括以下步骤:在prerouting链中添加一钩子函数;通过所述钩子函数添加端口扫描的逻辑判断规则,其中,所述钩子函数根据链表以及数组来实现所述逻辑判断规则;根据所述逻辑判断规则,对端口收到的报文进行逻辑判断,以接收所述报文或者丢弃所述报文。[0005]可选的,所述逻辑判断规则包括:获取发送报文的发送源的IP地址,当在一预设时间内,收到同一IP地址的发送源发送的报文达到一阈值时,丢弃所述报文。[0006]可选的,所述逻辑判断规则为自定义设置的逻辑判断规则。[0007]可选的,所述钩子函数包括:链表数据判断结构体,用以对收到的所述报文依据一预设的逻辑判断标准进行逻辑判断;黑名单数据结构体,用于将所述被判断丢弃的报文的发送源加入一预设的黑名单;以及设置逻辑判断标准结构体,用于设置所述链表数据判断结构体的所述逻辑判断标准。[0008]可选的,当根据所述逻辑判断规则,丢弃所述报文时,获取所述报文的发送源,并利用数组对所述发送源进行存储。[0009]为实现上述目的及其他相关目的,本发明还提供一种端口防扫描系统,所述系统包括:函数添加模块,用以在prerouting链中添加一钩子函数;规则设置模块,用以通过所述钩子函数添加端口扫描的逻辑判断规则,其中,所述钩子函数根据链表以及数组来实现所述逻辑判断规则;逻辑判断模块,用以根据所述逻辑判断规则,对端口收到的报文进行逻辑判断,以接收所述报文或者丢弃所述报文。[0010]可选的,所述逻辑判断规则包括:获取发送报文的发送源的IP地址,当在一预设时间内,收到同一IP地址的发送源发送的报文达到一阈值时,丢弃所述报文。[0011]可选的,所述逻辑判断规则为自定义设置的逻辑判断规则。[0012]可选的,所述钩子函数包括:链表数据判断结构体,用以对收到的所述报文依据一预设的逻辑判断标准进行逻辑判断;黑名单数据结构体,用于将所述被判断丢弃的报文的发送源加入一预设的黑名单;以及设置逻辑判断标准结构体,用于设置所述链表数据判断结构体的所述逻辑判断标准。[0013]可选的,当所述逻辑判断模块根据所述逻辑判断规则,丢弃所述报文时,获取所述报文的发送源,并利用数组对所述发送源进行存储。[0014]为实现上述目的及其他相关目的,本发明还提供一种电子装置,具有如上任一项所述的端口防扫描系统。[0015]如上所述,本发明的一种端口防扫描方法、系统、及一种电子装置,在prerouting链中添加一钩子函数;通过所述钩子函数添加端口扫描的逻辑判断规则,其中,所述钩子函数根据链表以及数组来实现所述逻辑判断规则,所述链表可实现对数据的时时删除或添加,操作灵活;根据所述逻辑判断规则,对端口收到的报文进行逻辑判断,以接收所述报文或者丢弃所述报文,可灵活的根据用户的自定义设置,设置多种逻辑判断规则,用于对多种端口扫描的拦截,保证电子设备运行的安全性。【附图说明】[0016]图1显示为本发明的一种端口防扫描方法在一具体实施例中的流程示意图。[0017]图2显示为本发明的一种端口防扫描系统在一具体实施例中的模块示意图。[0018]图3显示为本发明的一种电子装置在一具体实施例中的模块示意图。[0019]元件标号说明[0020]1、21端口防扫描系统[0021]11函数添加模块[0022]12规则设置模块[0023]13逻辑判断模块[0024]2电子装置[0025]Sll~S13步骤【具体实施方式】[0026]以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。[0027]需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图示中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。[0028]请参阅图1,显示为本发明的一种端口防扫描方法在一具体实施例中的流程示意图。所述方法包括以下步骤:[0029]Sll:在prerouting链中添加一钩子函数;[0030]S12:通过所述钩子函数添加端口扫描的逻辑判断规则,其中,所述钩子函数根据链表以及数组来实现所述逻辑判断规则,所述链表可实现对数据的时时删除或添加,操作灵活。[0031]S13:根据所述逻辑判断规则,对端口收到的报文进行逻辑判断,以接收所述报文或者丢弃所述报文。于一具体实施例中,优选的,当根据所述逻辑判断规则,丢弃所述报文时,获取所述报文的发送源,并利用数组对所述发送源进行存储,并将所述发送源存储于一黑名单中,以在下次检测到处于所述黑名单中的发送源发送的报文时,直接丢弃所述报文。[0032]在一具体实施例中,所述逻辑判断规则包括:获取发送报文的发送源的IP地址,当在一预设时间内,收到同一IP地址的发送源发送的报文达到一阈值时,丢弃所述报文。[0033]且在一具体实施例中,所述逻辑判断规则为自定义设置的逻辑判断规则。用户可以在设备运行过程中,发现新的端口扫描情况时,根据所述端口扫描的规则,设置新的与所述端口扫描相对应的逻辑判断规则。[0034]在一具体实施例中,所述钩子函数包括:链表数据判断结构体,用以对收到的所述报文依据一预设的逻辑判断标准进行逻辑判断;黑名单数据结构体,用于将所述被判断丢弃的报文的发送源加入一预设的黑名单;以及设置逻辑判断标准结构体,用于设置所述链表数据判断结构体的所述逻辑判断标准。所述逻辑判断标准例如包括判断一个所述链表在规定时间里面有没有达到最大/最小限度。[0035]下面通过具体实例对本实施例的应用原理进行说明:[0036]首先:在prerouting链里面添加一个钩子函数,具体程序为:[0037]staticstructnfJiQok^opsportal_auth^tips?.Iioofc^directfun,.owner=THISMODULE,.pi'=NFPR0T0_IPV4,,hooknum=NFJNETPREROIJTING,.priority=NFlPPRIFlRST,[0038]接着,direct_fun里面实现通过对应的逻辑进来的每个报文包都会进入到这个链的hook里面。[0039]接着:direct_fun里面实现接口有三个结构体,分别为:[0040]typedeΓstructDaiaJistf//inisrcpori;unsignedimsourip:unsignedlongjiffies;iniindex;siruclTimePorlTimpori[TIME_NUM];:unsignedini!lag;/7numisfullstructDataIist^ncxl;^SYN_LIST;[0041]这个结构是一个链表,用以判断符合条件的报文,如果在规定时间里面没有达到最大??ΜΕ_ΝΙΜ就删除链表里面的数据结构,如果??ΜΕ_ΝΙΜ达到最大,那就将报文发送的发送源加入到Black_Total这个这个黑名单里面,再把其删除掉,其中黑名单的数据结构为:[0042]structBlaek_Total{unsignedintilag;/7()noblackIyesBLACK_LISTpblack[BLACK_NUM];lblack_lotal;[0043]typedefstructBlaek_listfintsrc_port;unsignedinisourip;//ini.attacknum;unsignedinillag;//0whileIblack}BLACKJLIST;[0044]这是黑名单的数据结构,flag是标志位,用于判断是否有黑白名单。[0045]siruclTimePort[inisrcpori;unsignedlongjinios;};[0046]这个结构相当重要,这个就相当于队列的形式,如果HME_NUM在规定时间里面达到最大个数就把它加入到黑名单当中。当前第1页1 2 
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1