大家好,农企新闻小编来为大家解答以上问题。黑客网络入侵的方法,网络黑客入侵渗透基础教程很多人还不知道,现在让我们一起来看看吧!
黑客基础教程黑客渗透教程中有一种被动操作系统识别方法,就是通过监控不同系统之间的网络数据包来确定目标操作系统类型。虹吸管是用来测试这方面的,其工作原理如下:
判断TCP的主要四个字段:
1,TTL:出站数据包的生存期;
2.窗口大小:窗口大小;
3、DF:无分片位是否置位;
4、TOS:是否设置了服务类型。
综合信息可以大致判断目标系统,但不能百分百确定。
黑客渗透的第一步:检查
使用枚举技术,可以获得更具体、更有用的信息,比如账户信息。
1、Windows系统枚举技术
使用NetBIOS规则,NetBIOS,NetBOIS首先介绍。NetBOIS位于TCP/IP之上,定义了几个TCP和UDP端口。
三氯酚
(1),139:nbsession : netbois session。
示例:net use IP ipc $ Content $ nbsp“/user:”。
(2)、42: WINS: Windows互联网名称系统(UDP端口也是42)。
- UDP
(1) 1)137:nbname:名称查询。
例如,计算机名或用户名显示在nbtstat -A IP //03中。
(2) 138: NBDatagram : UDP数据报服务
例如,通过net send/d : domain-name ' hello '获得的用户名利用了IPC$ empty会话和sid工具。Sid工具由两个小工具组成:user2sid和sid2user.user2sid获取用户名或组名的sid;2 SID2user是通过输入一个SID得到的用户名和组名。sid是在创建用户时创建的,相当于UNIX系统下的UID。通过检查sid来检查WIN系统的权限。sid由一长串数字组成,包括两部分,第一部分用于唯一标识一个域,第二部分用于唯一标识一个用户名。这部分号码称为rid,是相对于标识符而言的。rid总是从500开始,超级管理员的rid总是500,而来宾用户的rid总是501;而新建立账户的rid是从1000。
开始了。
具体步骤:
c : net use IP IPC $ Content $ nbsp;'/user: ' '
C:user2sid \IP guest //获取了SID S-1-5-21-1123561945-1580818891-1957994488-501的前半部分
s是sid的前缀,后跟1表示版本号,5表示发布sid的授权实体,5表示NT/2 000。21-1123561945-1580818891-1957994488唯一标识域和工作组。不同的用户只是有不同的最终相对标识符。现在使用sid2user查询系统的用户名:
c : sid 2 user IP 5 21 1123561945 1580818891 1957994488 500
名字是饼干
域名是秃鹰
c : sid 2 user IP 5 21 1123561945 1580818891 1957994488 1001
SNMP检查点:通过管理组字符串默认的公共读取特性,可以得到系统的一些信息,包括:接口表、路由表和ARP表、TCP表和UDP表、设备表和存储表、进程表和软件表、用户表和共享表。SNMP工具,snmputil.exe
例如:
1或网络接口数量:
c: 获取本地主机public .1.3.6.1.2.1.2.1
2.显示所有SNMP变量内容
c: 最终遍历localhost public .1.3
2UNIX class 2系统的枚举技术
1,$ showmount-e www.target.com//provided港2049开放(NFS)
2、$finger @www.target.com //和rusers
3,$ telnet www.target.com 25
Vrfy root //确认是否有root
expn管理
放弃
黑客渗透第二步:具体分析漏洞
针对具体目标进行上述分析后,需要总结最佳入侵思路,选择入侵工具,做好入侵准备。有时,当入侵
1,WINDOWS下的和UNIN下的
一般原理,就用户提交的参数范围超过了在内存中保存的本地变量的范围,而程序 或者系统并没有对输入的参数进行合理的长度检查,导致了被调用函数的返回地址 被覆盖,如果用一个跳转到我们提交的shellcode的地方的地址代替,那么我们的s hellcode就可以运行,成功得到了目标的系统权限。此外还有格式化串漏洞,导致这个漏洞的原因是在处理用户数据的参数时没有过滤 用户提交的,格式化符号,例如%n这个将允许输出的参数的个数保存在内存中,恶意构造此漏洞用户将会向内存的任何位SHELLCODE的地址。
2,常见漏洞类型
UNIX下的本地漏洞很多,挖掘起来也较容易,他主要有以下几种类型:
1,环境欺骗
一般指PATH环境变量的欺骗,就是说如果一个特权的程序执行了一个外部的命令,那么我们可以简单的构造这个外部命令程序,然后修改PATH使这个特权程序能够去 首先执行我们构造的外部命令程序,而这个外部的命令程序是一个去得SHELL的程序
例如:
bash$cat >ps <
>#!/bin/sh
>EOF
而这个特权程序是:
bash$cat >test.c <
>int main()
>{
>setuid(0);
>system("ps -ef");
>}
>EOF
编译后的test文件具有s为,属主是root.这样设置是因为程序test执行时会以root 身份运行特权命令,这样在他运行时由于调用的是我们伪造的ps命令程序,所以会 产生一个root权限的SHELL环境。
2,竞争条件
一般指时序竞争,例如:
fp=fopen("test.log","w+");
chown("test.log",getuid(),getgid());
原理也很简单,就是如果当前的程序运行时权限是euid=root,uid=当前用户,由于文件test.log在打开会执行将文件的属主改为当前用户,所以我们可以在执行完fopen之后,chown之前删了test.log,而创建了一个到/etc/passwd的符号链接,这样就会将/etc/passwd文件的属主改为当前的用户,当前的用户就可以在passwd文件中将自己的uid改为0,这样就取得了system权限。
3,溢出和格式串漏洞
导致这些漏洞的数据来源主要是:
1,命令行参数
2,环境变量
3,特定格式文件的读取
4,用户交互十的输入
缓冲溢出的漏洞是有以下一些函数引起的:
1,strcpy
2, strcat
3, sprintf
4, vsprintf
格式化串的漏洞和以下一些函数有关:
1, print/vprintf
2, fprintf/vfprintf
3, sprintf/vsprintf
4, snprintf/vsnprintf
利用工具有objdump,elfedump查看目标是否有不安全的以上不安全的函数,如果有可以进行黑盒测试,进而进行返汇编分析程序的上下文和执行流程,利用strings可以静态查找目标的环境变量。
黑客入侵渗透第三步:攻击WWW
现在的入侵事件,攻击WWW居多,原因也很简单,那就是程序员在编写WEB脚本程序时更本不注重安全因素,导致了上传shell,提升权限之类的严重后果,入侵渗透测试主要通过以下几个方面进行测试:
1,搜索SQL注入点;
2,搜索特定目录和文件,例如:上传程序文件,这个利用价值也很大;
3,寻找管理员登陆网页,进行字典或者SQL饶过入侵;
4,寻找WEB程序的源代码,进行漏洞挖掘,主要涉及的漏洞类型有:SQL注入,文件包含漏洞,目录跳转漏洞,以脚本文件格式保存错误日志漏洞,上传漏洞;
5,在代码审核时,不要忘记对程序员犯的逻辑错误进行查看,例如:函数书写错误
6,总是,漏洞的成因归根到底是由于对用户的输入没有进行严格的过滤。
黑客入侵渗透第四步:其他的入侵
1,针对数据库MSSQL,MYSQL,ORACLE等数据库的入侵;
2,针对路由,防火墙,IDS等网络设备的渗透
3,无线入侵渗透
黑客入侵渗透第五步:入侵渗透以后
1,在成功得到系统级别的权限以后,就要在目标留下后门方便以后进入,当然清楚日志是最为重要的收尾工作,这些方面也有很多的技术可以讨论,例如:后门的隐藏(WIN下的ADS是一个不错的隐藏程序的东东,日志的有选择删除及其伪造等等。