第四小组鲜花管理系统项目数据库设计.doc
2022-05-09 19:08:02 132KB 数据库 文档资料 database
项目小组分工计划明细表,适合团队人员开发文档说明书
2022-05-06 20:37:39 34KB 项目小组分工计划明细表
1
Win11小组件打不开 完美解决辅助工具
2022-05-03 13:01:28 1.64MB 综合资源
SQL注入1 简介 许多现实中对于网站的攻击往往是由于网站没有及时更新或者对于用户的输入没有进行检查。从缓冲区溢出说起,这样一种针对系统脆弱性的威胁,最根本的问题还是在于对于用户的输入没有进行检查。作为主要威胁之一的SQL注入带来了人们对于其应用和数据库的担忧。这个问题的出现有十年的时间了,但是现在仍旧在许多网站中出现。SQL注入就像许多当前主要的的web应用安全攻击问题也被划归在了对于用户输入的检查上。 正文 许多web开发者并不知道SQL语句能够被自定义(handle)并且假定SQL语句是一个让人信任的命令。这就让SQL语句能够绕过访问控制机制(access control),因此跳过标准的授权和认证检查。甚至有些时候SQL语句能够允许使用服务器操作系统上的命令行的权限。 直接的SQL注入命令是一种方法,它被攻击者构造或者是修改现成的SQL命令来暴露出隐藏的数据或者是覆盖掉有价值的数据,甚至在服务器上执行危险地系统指令 入门 结构化的语言是数据库的标准声明语言。这让(语言)变的更加简洁并且更易于使用。SQL起源于70年代的IBM实验室。SQL被用来让应用程序与数据库之间进行通信。 SQL使用如下的4种语言来对数据库进行操作 SELECT -从数据库中获得一条记录 INSERT-向数据库中插入一条记录 DELETE-从数据库中删除一条记录 UPDATE-从数据库中更新或者改变当前记录 当用户提交的语句被用作数据库的查询语句时SQL就能够发生。比如当用户被网站认证授权,用户发送一个带有”用户名”和”密码”的信息,用户名/密码就与存放在数据库中的内容进行核对。如果相同的话用户就被允许登录,否则用户登录失败。以下是一个在后台进行登录的例子。 代码 SELECT * FROM user WHERE username='$username' AND password='$password' 这个语句简单地指明了从user的表中查询用户名和username相等的,并且密码和password相等的。所以,如果用户发送用户名为”admin”,并且密码为”12345″,那么SQL语句被创建如下: SELECT * FROM user WHERE username='admin' AND password ='12345' 注入 那么,如果用户输入’ or ’1′=’1,第一个引号会终止输入的字符串,剩下的会被当做SQL语句,并且在SQL语句中1=1恒为真,这就能够让我们绕过注册机制 SELECT * FROM user WHERE username=’admin’ AND password =”or ’1′=’1′ -TRUE 上述是一个SQL注入的简单地例子,然而在实际过程中,SQL注入比这要复杂的多。在我们的渗透测试中,大多数时候我们有一个非常紧凑的计划表,所以这个时候我们需要一个自动化的攻击来为我们进行注入攻击。 SQLMAP就是一能够利用(系统)脆弱性的工具。它是开源的,并经常被用来在Python写的脆弱的DBMS上进行入侵的渗透测试。它能够检测并利用SQL上的漏洞,让我们举例在操作系统和数据库上使用sqlmap.py。 一步一步 我将尽可能地以最简洁的方式展示出来。 最常见的检测SQL注入的方法是通过在输入处添加一个单引号(')并且期待(系统)返回一个错误,有些应用程序并不会返回错误。这个时候我们就会利用true/false语句来检查是否这个应用程序会受到SQL注入的攻击。 为了随机的找到还有SQL注入的脆弱性的网站,你能够使用如下格式的语句利用google dork:inurl:news.php id =1?将会出现一堆google dork的数据并且为你过滤你搜索得到的结果提供了可能。那么让那个我们开始吧。
2022-04-06 19:46:32 7.45MB 黑客工具 sqlmap
1
前几年的Android应用源码Demo,主要面向的是学生毕业设计学习。
2022-04-06 02:29:26 678KB Android 计算机 源码 案例
运动会工会小组长发言稿.docx
2022-04-06 00:26:52 25KB
javascript小组件 原生table排序表格脚本 兼容ie firefox opera chrome,需要的朋友可以参考下
2022-03-11 10:31:15 37KB table 排序 表格
1
《Windows Sockets网络编程》是WindowsSockets网络编程领域公认的经典著作,由Windows Sockets2.0规范解释小组负责人亲自执笔,权威性毋庸置疑。它结合大量示例,对WindowsSockets规范进行了深刻地解读,系统讲解了WindowsSockets网络编程及其相关的概念、原理、主要命令、操作模式,以及开发技巧和可能的陷阱,从程序员的角度给出了大量的建议和最佳实践,是学习WindowsSockets网络编程不可多得的参考书。   全书分为三部分:第一部分(第1~6章),提供了翔实的背景知识和框架方面的概念,借助于此框架,读者可理解WinSock的具体细节,包括WindowsSockets概述、OSI网络参考模型、TCP/IP协议簇中的协议和可用的服务、WinSock网络应用程序的框架及其工作机制、WinSock的三种操作模式、socket通信机制等;第二部分(第7~12章),以FTP客户端实例为基础介绍了函数实例库,还介绍了客户端程序、服务器程序和DLL中间构件及它们的相应函数,并涵盖socket命令和选项及移植BSDSockets相关事项等;第三部分(第13~17章),介绍了应用程序调试技术和工具,针对应用编程中的陷阱的建议和措施,WinSockAPI的多种操作系统平台,WinSock规范的可选功能和WinSock规范2.0中的所有新功能。 译者序 序 前言 第1章 Windows Sockets概述 1.1 什么是Windows Sockets 1.2 Windows Sockets的发展历史 1.3 Windows Sockets的优势 1.3.1 Windows Sockets是一个开放的标准 1.3.2 Windows Sockets提供源代码可移植性 1.3.3 Windows Sockets支持动态链接 1.3.4 Windows Sockets的优点 1.4 Windows Sockets的前景 1.5 结论 第2章 Windows Sockets的概念 2.1 OSI网络模型 2.2 WinSock网络模型 2.2.1 信息与数据 2.2.2 应用协议 2.3 WinSock中的OSI层次 2.3.1 应用层 2.3.2 表示层 2.3.3 会话层 2.3.4 传输层 2.3.5 网络层 2.3.6 数据链路层 2.3.7 物理层 2.4 模块化的层次框 2.5 服务和协议 2.6 协议和API 第3章 TCP/IP协议服务 3.1 什么是TCP/IP 3.2 TCP/IP的发展历史 3.3 传输服务 3.3.1 无连接的服务:UDP 3.3.2 面向连接的服务:TCP 3.3.3 传输协议的选择:UDP与TCP的对比 3.4 网络服务 3.4.1 IP服务 3.4.2 ICMP服务 3.5 支持协议和服务 3.5.1 域名服务 3.5.2 地址解析协议 3.5.3 其他支持协议 3.6 TCP/IP的发展前景 第4章 网络应用程序工作机制 4.1 客户端-服务器模型 4.2 网络程序概览 4.3 socket的打开 4.4 socket的命名 4.4.1 sockaddr结构 4.4.2 sockaddr_in结构 4.4.3 端口号 4.4.4 本地IP地址 4.4.5 什么是socket名称 4.4.6 客户端socket名称是可选的 4.5 与另一个socket建立关联 4.5.1 服务器如何准备建立关联 4.5.2 客户端如何发起一个关联 4.5.3 服务器如何完成一个关联 4.6 socket之间的发送与接收 4.6.1 在“已连接的”socket上发送数据 4.6.2 在“无连接的”socket上发送数据 4.6.3 接收数据 4.6.4 socket解复用器中的关联 4.7 socket的关闭 4.7.1 closesocket 4.7.2 shutdown 4.8 客户端和服务器概览 第5章 操作模式 5.1 什么是操作模式 5.1.1 不挂机,等待:阻塞 5.1.2 挂机后再拨:非阻塞 5.1.3 请求对方回拨:异步 5.2 阻塞模式 5.2.1 阻塞socket 5.2.2 阻塞函数 5.2.3 伪阻塞的问题 5.2.4 阻塞钩子函数 5.2.5 阻塞情境 5.2.6 撤销阻塞操作 5.2.7 阻塞操作中的超时 5.2.8 无最少接收限制值 5.2.9 代码示例 5.3 非阻塞模式 5.3.1 怎样使socket成为非阻塞的 5.3.2 成功与失败不是绝对的 5.3.3 探询而非阻塞 5.3.4 显式地避让 5.3.5 代码示例 5.4 异步模式 5.4.1 认识异步函数 5.4.2 撤销异步操作 5.4.3 代码示例 5.4.4 AU_Time应用 5.5 性能比较 5.6 平台比较 5.7 真正的阻塞 5.7.1 线程化的应用程序 5.7.2 其他适用性说明 第6章 socket状态 6.1 什么是socket状态 6.1.1 数据报socket的状态 6.1.2 流socket的状态 6.2 socket状态的检测方法 6.2.1 根据函数调用的成功或失败检测 6.2.2 同步检测 6.2.3 异步检测 6.3 WSAAsyncSelect 6.3.1 WSAAsyncSelect的工作原理 6.3.2 什么是WSAAsyncSelect事件 6.3.3 避免机会丢失的窗口 6.3.4 什么是重使能函数 6.3.5 什么是通知消息 6.3.6 为函数失败做好准备 6.3.7 在响应时设置循环 6.3.8 撤销异步通知 6.3.9 事件描述 6.3.10 AS_Echo应用程序 6.4 select 6.4.1 怎样使用select 6.4.2 select的宏 6.4.3 select的输入参数 6.4.4 不要把select作为定时器 6.4.5 注意0超时 6.4.6 代码示例 6.5 查看数据 6.5.1 ioctlsocketFIONREAD命令 6.5.2 带有MSG_PEEK标志的recv 6.6 带外数据 6.6.1 TCP的局限 6.6.2 ioctlsocket函数和SIOCATMARK命令 6.6.3 代码示例 6.7 监听状态 第7章 应用程序和函数实例库 7.1 FTP客户端实例 7.1.1 文件传输协议概述 7.1.2 FTP有限状态机 7.1.3 AC_FTP应用程序 7.1.4 操作中的AC_FTP 7.2 函数实例库 7.2.1 CenterWnd 7.2.2 CloseConn 7.2.3 CreateLclFile 7.2.4 Dlg_About 7.2.5 GetAddr 7.2.6 GetBuf 7.2.7 GetHostID 7.2.8 GetLclDir 7.2.9 GetPort 7.2.10 WSAErrStr 7.2.11 WSAperror 7.3 WinSockx.h 7.3.1 Globals.c 7.3.2 WSA_Xtra.h 第8章 主机名称与主机地址 8.1 主机名称与主机地址解析 8.1.1 hostent结构 8.1.2 主机名称解析 8.1.3 地址解析 8.2 主机表、域名系统和网络信息服务 8.2.1 主机表 8.2.2 域名系统 8.2.3 网络信息服务 8.3 本地主机信息 8.4 网络地址与格式化 8.4.1 in_addr结构 8.4.2 inet_addr 8.4.3 inet_ntoa 8.5 协议族与地址族 第9章 socket信息与控制 9.1 socket控制 9.1.1 FIONBIO 9.1.2 FIONREAD 9.1.3 SIOCATMARK 9.1.4 其他控制命令 9.2 socket选项 9.2.1 getsockopt与setsockopt 9.2.2 SO_ACCEPTCONN 9.2.3 SO_BROADCAST 9.2.4 SO_DEBUG 9.2.5 SO_DONTLINGER 9.2.6 SO_DONTROUTE 9.2.7 SO_ERROR 9.2.8 SO_KEEPALIVE 9.2.9 SO_LINGER 9.2.10 SO_OOBINLINE 9.2.11 SO_RCVBUF与SO_SNDBUF 9.2.12 SO_REUSEADDR 9.2.13 SO_TYPE 9.2.14 TCP_NODELAY 9.2.15 不支持的选项 9.2.16 未来会使用的选项 9.3 阻塞钩子 9.3.1 WSASetBlockingHook 9.3.2 WSAUnhookBlockingHook 9.3.3 阻塞钩子函数 9.3.4 阻塞状态 9.4 socket 名称 9.4.1 getsockname 9.4.2 getpeername 第10章 支持例程 10.1 启动与清除 10.1.1 WSAStartup 10.1.2 WSACleanup 10.2 字节顺序 10.3 服务名称与端口号 10.3.1 servent结构 10.3.2 服务解析 10.3.3 端口解析 10.3.4 服务数据库 10.4 协议名称与协议号 10.4.1 protoent结构 10.4.2 协议名称解析 10.4.3 协议号解析 10.4.4 协议数据库 10.5 报错 10.5.1 WSAGetLastError 10.5.2 WSASetLastError 10.5.3 错误文本显示 第11章 WinSock上的DLL 11.1 创建一个新的API 11.1.1 仿真的API 11.1.2 应用协议API 11.1.3 封装的WinSock API 11.2 DLL的问题 11.2.1 重入 11.2.2 任务管理 11.2.3 与WinSock DLL的链接 11.3 DLL实例 11.3.1 WSASimpl应用程序 11.3.2 WSASimpl DLL 第12章 移植BSD Sockets 12.1 Windows Sockets与Berkeley Sockets的差异 12.1.1 socket不是文件句柄 12.1.2 signal不可用 12.1.3 域名不可用 12.1.4 地址信息和操作不可用 12.1.5 syslog不可用 12.1.6 变量errno不可用 12.1.7 perror和strerror不可用 12.1.8 数据库文件操作不可用 12.1.9 bcmp、bcopy和bzero不可用 12.1.10 本地IPC不可用 12.1.11 OOB API不同 12.1.12 setsockoptSO_DEBUG是可选的 12.2 16位Windows的局限性 12.2.1 16位Windows不清理现场 12.2.2 16位Windows是非抢占式的 12.2.3 16位Windows文件系统不安全 12.2.4 16位Windows使用分段寻址 12.2.5 fork不可用 12.3 移植Berkeley Sockets的其他事项 12.3.1 包含文件 12.3.2 socket域 12.3.3 socket类型 12.3.4 socket句柄 12.3.5 错误值 12.4 函数列表 第13章 调试 13.1 问题类型 13.1.1 安装问题 13.1.2 网络问题 13.1.3 程序问题 13.1.4 WinSock DLL问题 13.2 故障表现及其定位 13.3 问题评估 13.4 安装调试 13.5 网络调试 13.5.1 通用网络调试 13.5.2 主机解析调试 13.6 应用程序调试 13.7 调试工具 13.7.1 网络调试工具 13.7.2 应用程序调试工具 13.7.3 WinSock符合性和性能测试工具 13.7.4 其他调试工具 第14章 该做和不该做的 14.1 特征化应用程序 14.2 应用程序数据流 14.2.1 增大缓存 14.2.2 MTU的考虑 14.2.3 健壮性原则 14.2.4 避免查看 14.2.5 先接收后发送 14.3 流算法 14.3.1 发送结构化数据 14.3.2 发送交互数据 14.3.3 检测无效连接 14.3.4 验证数据传输 14.4 数据报算法 14.4.1 实现超时机制 14.4.2 数据报排序 14.4.3 有节制地发送数据 14.4.4 同步发送方和接收方 14.5 好消息准则 14.5.1 检查返回值 14.5.2 检测部分成功 14.5.3 准备应对任何阶段出现的任何错误 14.5.4 检测非致命错误 14.5.5 恰当地处理错误 14.5.6 对用户透明 14.5.7 留好出口 14.5.8 不忽视任何警告信息 14.6 常见陷阱和缺陷 14.6.1 打开和命名socket 14.6.2 建立连接 14.6.3 监听和同意建立连接 14.6.4 发送和接收 14.6.5 关闭socket 14.6.6 使用主机名称和地址 14.6.7 使用WSAAsyncSelect函数 14.6.8 使用阻塞socket 14.6.9 退出某个应用程序 14.6.10 其他注意事项 第15章 系统平台 15.1 WOSA网络模型 15.2 32位WinSock 15.2.1 Windows 15.2.2 交叉执行 15.2.3 32位WinSock特征 15.2.4 32位操作系统优势 15.3 其他系统平台 第16章 可选特性 16.1 自相矛盾的可选标准 16.2 应该使用可选特性吗 16.3 原始socket 16.3.1 ICMP ping应用 16.3.2 IP_TTL路径跟踪 16.4 多播 16.4.1 为何使用多播 16.4.2 多播API 16.4.3 多播机制 16.5 环回接口 16.6 共享socket 16.7 可选项 16.8 socket作为文件句柄 16.9 在任何时候都准备好应对任何错误 16.10 其他可选特性 第17章 WinSock 17.1 你需要WinSock 2吗 17.2 特性概述 17.3 多协议支持 17.3.1 WinSock 2架构 17.3.2 协议独立 17.3.3 名称空间独立 17.4 重叠I/O 17.5 分散和聚合 17.6 服务质量 17.7 socket组 17.8 多点和多播 17.9 有条件的接受 17.10 连接和断开数据 17.11 socket共享 17.12 协议相关的附加功能 17.12.1 WSAIoctl 17.12.2 get/setsockopt 附录A TCP/IP协议首部 A.1 TCP/IP报文中的分层 A.2 ARP首部 A.3 IP首部 A.4 ICMP首部 A.5 IGMP首部 A.6 TCP首部 A.7 UDP首部 A.8 对话示例 附录B 快速参考 B.1 结构 B.2 函数 B.3 宏 附录C 错误信息参考 C.1 获取错误值的位置 C.2 可能出现的错误 C.3 用户可以解决的错误 C.4 详细的错误描述 C.5 按数值排序的错误代码表 附录D 用户必备 D.1 重要文件 D.2 编译与链接机制 D.3 各种WinSock的使用 D.4 各种编程语言的使用
2022-03-08 15:56:17 60MB Windows Sockets 网络编程
1
上海交通大学 Beamer模板专门为上海交通大学的学生在小组会议或课程项目上发表演讲。 用法 您可以直接从github下载zip文件,然后将其上传到以使用此模板。 配置
2022-03-05 11:40:56 13KB
1
高级网络组 利物浦大学高级网络小组小组页面
2022-02-25 20:40:17 653KB CSS
1