按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!
45。put local…file'remote…file':将本地文件local…file传送至远程主机。
46。pwd:显示远程主机的当前工作目录。
47。quit:同bye,退出ftp会话。
48。quote arg1,arg2。。。:将参数逐字发至远程ftp服务器,如:quote syst。
49。recv remote…file'local…file':同get。
50。reget remote…file'local…file':类似于get, 但若local…file存在,则从上次传输中断处续传。
51。rhelp'cmd…name':请求获得远程主机的帮助。
52。rstatus'file…name':若未指定文件名,则显示远程主机的状态, 否则显示文件状态。
53。rename'from''to':更改远程主机文件名。
54。reset:清除回答队列。
55。restart marker:从指定的标志marker处,重新开始get或put,如:restart 130。
56。rmdir dir…name:删除远程主机目录。
57。runique:设置文件名只一性存储,若文件存在,则在原文件后加后缀。1, 。2等。
58。send local…file'remote…file':同put。
59。sendport:设置PORT命令的使用。
60。site arg1,arg2。。。:将参数作为SITE命令逐字发送至远程ftp主机。
61。size file…name:显示远程主机文件大小,如:site idle 7200。
62。status:显示当前ftp状态。
63。struct'struct…name':将文件传输结构设置为struct…name, 缺省时使用stream结构。
64。sunique:将远程主机文件名存储设置为只一(与runique对应)。
65。system:显示远程主机的操作系统类型。
66。tenex:将文件传输类型设置为TENEX机的所需的类型。
67。tick:设置传输时的字节计数器。
68。trace:设置包跟踪。
69。type'type…name':设置文件传输类型为type…name,缺省为ascii,如:type binary,设置二进制传输方式。
70。umask'newmask':将远程服务器的缺省umask设置为newmask,如:umask 3
71。user user…name'password''account':向远程主机表明自己的身份,需要口令时,必须输入口令,如:user anonymous my@email。
72。verbose:同命令行的…v参数,即设置详尽报告方式,ftp 服务器的所有响 应都将显示给用户,缺省为on。
73。?'cmd':同help。
上面的命令我建议大家最好下下来,背熟了很有用的。上面说到很多FTP都有提供匿名FTP的服务;而方便和安全性却是鱼与熊掌不能两得的!!很多
系统管理员都为了避免麻烦就用系统的预设设定来提供FTP这个服务。而anonymous ftp却
是有许多漏洞的,这样我们就有的说了啊。
允许用户使用Anonymous或FTP作为用户名以用户信箱做为口令(确切的说是任何带@的口令)登陆到系统。虽说匿名FTP本身 并不是个漏洞,因为匿名区域里放置有/etc/passwd和/etc/group文件,往往可能因为管理员配置上的大意造成潜在的安全隐患。使用匿名的FTP,用户可以匿名登陆FTP服务器。登陆时需要用户提供完整的E…mail地址做为passwd,其实在很多站点上这个要求形同虚设,你只要在其中包含有@字节看起来像个E…mail地址就行了,主机不会对口令做任何效验的。
远程所提供FTP服务的主机在处理匿名用户的命令时,一般都会执行一个chroot命令让匿名者进入主机所允许的匿名FTP区域。然而为了支持匿名FTP和用户FTP,FTP服务器要访问所有文件,也就证明了FTP服务器不是总在chroot环境中运行的。(一位前辈说的,我不知道还有哪个说的能比这还精辟)这个环节会让一些管理员不知所为而未曾理会,很容易被我们利用而得到一个匿名FTP用户所不能得到的权限。当然解决也很简单,可以通过修改inetd的配置来替代直接启动FTP服务器,它执行chroot(就类似于chrootuid的程序),然后再启动服务器就可以了。
一般情况下,FTP只限于在匿名用户下访问,匿名用户有其正常的权限,在启动服务器前执行chroot就意味着匿名用户将受到限制。如果说一个匿名用户在FTP服务器的匿名区域获得了一份不应该是匿名用户获得的文件,那么就说明了可能有内部客户将这个文件放置在匿名的FTP区域了。 匿名用户可以阅读到/etc/passwd文件这就是管理员很大错误表现。还有隐患是telnet到ftp21如果允许执行SITE CHMOD和SITE EXEC、/home的所有者是匿名FTP的用户,那么随便就可把权限设置成****或者更多的进行修改等等。
为了方便我们用个小软件,其实不要软件也可以,但用一下方便大家嘛 FTP scanner(下载:sorry。vse。cz/~xmicm08/FTPScanner/)
安装好后,我们从开始菜单中的程序中找到FTP Scanner并运行它。 我们熟悉一下我们要使用的软件的界面。 打开软件我们可以看到 :Host 主机 ;Beginning ;开始IP 下面有几个文本框 我们在这里填入我们要开始扫描的IP。 Ending 结束IP 。我们在这里填入我们结束扫描的IP。 在下面有一个 Threads 线程 。我们可以根据网速来选择这里的线程数。 通常Moden上网选为5070左右。 更快的话选到100个线程。 然后我们选择菜单Session 里的Begin FTP scan 就可以开始了扫描了.。 】
注意:我们可以在View 里的options选项里选择我们的扫描参数.
在Login config里
里的UserName 和 Password我们通常不用更改.
但你也可以改动他. 比如你想扫描特定的帐号.比如扫描用户 Oracle密码也是Oracle的话 就改动这里的 UserName 和 Password
在IP Logging里
我们可以更改扫描结果存放的位置.
随便选择一个位置和文件名就可以了.
默认是存放在安装目录下面的iplog。txt文件.
下面我想大家也会用吧,就是找个主机试试,注意和命令一起用,如果在打开的网页里不能写权限,那就把密码档先当下来. ftp》 get /etc/passwd ,然后用小榕的流光提取用户,再找个一个可以利用的shell,就OK了,用找到的用户名和密码登陆,想干什么就干什么了,建议大家装个后门,因为一般管理员很快就会发现的。当然,很多主机更离谱的是.anonymous竟然有到根目录和写的权限
好了,就说到这大家找几个IP段练练吧,国内这样的主机很多的
『第10天』说SQL
先说说什么叫SQL?大家反正都觉得这SQL和数据库有关,其实也不是这样的。SQL是一种结构化数据库查询语言,其发音为“sequel”或“S…Q…L”。尽管MICROSOFT以其特有的方式加入了所有权声明,但它在大多数据库应用中近乎成为一种标准。简言之,它是一种使用你选择的标准从数据库记录中选择某些记录的方法。
因为它的重要所以我将会花一定的时间来讲它,前面的东西大家不说可能用这就会了,但这个一定要仔细的说。先回答大家一个疑问,学了SQL有什么用呢?现在常用的数据库软件是ms…sql,一般的服务器上都由它提供数据库服务,但哟于具有管理权限的帐号SA的默认密码是空的,且低版本的SQL由漏洞能直接获得密码。所以它也成为入侵的一种捷径(如果由漏洞的话)。介绍个软件MS…SOL Brower(SQL远程入侵软件),以后会由用的。
在使用它时,只需要发出“做什么”的 命令,“怎么做”是不用使用者考虑的。
SQL数据库数据体系结构
SQL数据库的数据体系结构基本上是三级结构,但使用术语与传统关系模型术语不同。
在SQL中,关系模式(模式)称为“基本表”(base table);存储模式(内模式)称为“存
储文件”(stored file);子模式(外模式)称为“视图”(view);元组称为“行”(row)
;属性称为“列”(column)。名称对称如^00100009a^:
SQL语言的组成
在正式学习SQL语言之前,首先让我们对SQL语言有一个基本认识,介绍一下SQL语言的
组成:
1。一个SQL数据库是表(Table)的集合,它由一个或多个SQL模式定义。
2。一个SQL表由行集构成,一行是列的序列(集合),每列与行对应一个数据项。
3。一个表或者是一个基本表或者是一个视图。基本表是实际存储在数据库的表,而视图
是由若干基本表或其他视图构成的表的定义。
4。一个基本表可以跨一个或多个存储文件,一个存储文件也可存放一个或多个基本表。
每个存储文件与外部存储上一个物理文件对应。
5。用户可以用SQL语句对视图和基本表进行查询等操作。在用户角度来看,视图和基本
表是一样的,没有区别,都是关系(表格)。
6。SQL用户可以是应用程序,也可以是终端用户。SQL语句可嵌入在宿主语言的程序中使
用,宿主语言有FORTRAN,COBOL,PASCAL,PL/I,C和Ada语言等。SQL用户也能作为独
立的用户接口,供交互环境下的终端用户使用。
(这个内容好像很难懂,大家如果实在不行,了解就行了)
对数据库进行操作
SQL包括了所有对数据库的操作,主要是由4个部分组成:
1。数据定义:这一部分又称为“SQL DDL”,定义数据库的逻辑结构,包括定义数据
库、基本表、视图和索引4部分。
2。数据操纵:这一部分又称为“SQL DML”,其中包括数据查询和数据更新两大类操
作,其中数据更新又包括插入、删除和更新三种操作。
3。数据控制:对用户访问数据的控制有基本表和视图的授权、完整性规则的描述,事务
控制语句等。
4。嵌入式SQL语言的使用规定:规定SQL语句在宿主语言的程序中使用的规则
下面我们就 简单介绍一下数据定义
SQL数据定义功能包括定义数据库、基本表、索引和视图。
首先,让我们了解一下SQL所提供的基本数据类型:(如^00100009b^)
1。数据库的建立与删除
(1)建立数据库:数据库是一个包括了多个基本表的数据集,其语句格式为:
CREATE DATABASE [其它参数]
其中,在系统中必须是唯一的,不能重复,不然将导致数据存取失误。[其
它参数]因具体数据库实现系统不同而异。
例:要建立项目管理数据库(xmmanage),其语句应为:
CREATE DATABASE xmmanage
(2) 数据库的删除:将数据库及其全部内容从系统中删除。
其语句格式为:DROP DATABASE
例:删除项目管理数据库(xmmanage),其语句应为:
DROP DATABASE xmmanage
2。基本表的定义及变更
本身独立存在的表称为基本表,在SQL语言中一个关系唯一对应一个基本表。基本表的
定义指建立基本关系模式,而变更则是指对数据库中已存在的基本表进行删除与修改。
(1)基本表的定义:基本表是非导出关系,其定义涉及表名、列名及数据类型等,其语
句格式为:
CREATE TABLE[。]
( 数据类型 [缺省值] [NOT NULL / NULL]
[, 数据类型 [缺省值] [NOT NULL / NULL]]。。。。。。
[,UNIQUE (列名[,列名]。。。。。。)]
[,PRIMARY KEY(列名)]
[,FOREIGN KEY(列名[,列名]。。。。。。)REFERENCE (列名[,列名]
。。。。。。)]
[,CHECK(条件)] [其它参数])
其中,〈数据库名〉。]指出将新建立的表存放于该数据库中;
新建的表由两部分组成:其一为表和一组列名,其二是实际存放的数据(即可在定义表
的同时,直接存放数据到表中);
列名为用户自定义的易于理解的名称,列名中不能使用空格;
数据类型为上面所介绍的几种标准数据类型;
[NOT NULL/NULL]指出该列是否允许存放空值,SQL语言支持空值的概念,所谓空值是
“不知道”或“无意义”的值,值得注意的是数据“0”和空格都不是空值,系统一般
默认允许为空值,所以当不允许为空值时,必须明确使用NOT NULL;
[,UNIQUE]将列按照其规定的顺序进行排列,如不指定排列顺