- Ctrl + T: 变换图形;
- Ctrl + J: 复制选中区域;
- Ctrl + G: 将选中图层编组;
- Ctrl + I: 颜色反向;
- Ctrl + 通道层: 选中(黑白)通道对应的区域;
- Ctrl + Shift + I: 反选选区;
- 图层->添加矢量蒙版: 根据通道层扣除背景;
- Alt + 图层蒙版层: 进入蒙版;
- Ctrl + Alt + 2: 高光选区;
- Shift + 左/右键头: 移动一个帧
- M: 添加标记
- I: 标记入点
- O: 标记出点
- ": 删除区域并拼接左右两侧;
- Alt + 拖拽时间轴片段
- 复制到拖拽处
[效果]
- 粗糙边缘
- 边框
- 溶解消失动画
- 边框
- 不透明度
- 混合模式
- 叠加/柔光: 半透明效果
- 混合模式
- 闪光灯
- 周期闪烁效果。
- Ctrl+Shift+C: 预合成
- Ctrl+Shift+D: 裁剪所选素材
- Enter: 播放
- Ctrl+Enter: 窗口播放
- F5: 插帧
- Shift+O: 画布
- Ctrl+J: 为选中的两个锚点之间连线
- Ctrl+[/Ctrl+]: 为选中的区域调整次序
- Ctrl+G: 为选中的区域编组
- 封套扭曲
- 用网格建立: 建立网格后可拖动网格顶点或者区块进行形变。
- 路径
- 添加锚点: 所选图形每两个锚点之间再加一个锚点。
- 吸管(I): 吸取颜色至整体。
- 按住Shift: 只吸取颜色至当前选中颜色种类。
- Alt+F3: 选中文本按下快捷键,即可一次性选择全部的相同文本进行同时编辑
- Alt+Shift+1: 窗口分屏,恢复默认1屏
- Alt+Shift+2: 左右分屏-2列
- Alt+Shift+3: 左右分屏-3列
- Alt+Shift+4: 左右分屏-4列
- Alt+Shift+5: 等分4屏
- Alt+Shift+8: 垂直分屏-2屏
- Alt+Shift+9: 垂直分屏-3屏
- Ctrl+/: 注释单行
- Ctrl+: 打开搜索框,自动带#,输入关键字,查找文件中的变量名、属性名等
- Ctrl+→: 向右单位性地移动光标,快速移动光标
- Ctrl+←: 向左单位性地移动光标,快速移动光标
- Ctrl+Alt+↑: 向上添加多行光标,可同时编辑多行
- Ctrl+Alt+↓: 向下添加多行光标,可同时编辑多行
- Ctrl+D: 选中光标所占的文本,继续操作则会选中下一个相同的文本
- Ctrl+Enter: 在下一行插入新行
- Ctrl+F: 打开底部搜索框,查找关键字
- Ctrl+F2: 设置书签
- Ctrl+G: 打开搜索框,自动带:,输入数字跳转到该行代码
- Ctrl+J: 合并选中的多行代码为一行
- Ctrl+K+0: 展开所有折叠代码
- Ctrl+K+B: 开启/关闭侧边栏
- Ctrl+K+K: 从光标处开始删除代码至行尾
- Ctrl+K+L: 转换小写
- Ctrl+K+U: 转换大写
- Ctrl+L: 选中整行,继续操作则继续选择下一行,效果和
- Ctrl+M: 光标移动至括号内结束或开始的位置
- Ctrl+P: 打开搜索框
- Ctrl+PageDown: 向左切换当前窗口的标签页
- Ctrl+PageUp: 向右切换当前窗口的标签页
- Ctrl+R: 打开搜索框,自动带@,输入关键字,查找文件中的函数名
- Ctrl+H: 替换。
- Ctrl+Shift+/: 注释多行
- Ctrl+Shift+[: 选中代码,按下快捷键,折叠代码
- Ctrl+Shift+]: 选中代码,按下快捷键,展开代码
- Ctrl+Shift+↑: 将光标所在行和上一行代码互换
- Ctrl+Shift+→: 向右单位性地选中文本
- Ctrl+Shift+↓: 将光标所在行和下一行代码互换
- Ctrl+Shift+←: 向左单位性地选中文本
- Ctrl+Shift+D: 复制光标所在整行,插入到下一行
- Ctrl+Shift+Enter: 在上一行插入新行
- Ctrl+shift+F: 在文件夹内查找,与普通编辑器不同的地方是sublime允许添加多个文件夹进行查找,略高端,未研究
- Ctrl+Shift+K: 删除整行
- Ctrl+Shift+L: 先选中多行,再按下快捷键,会在每行行尾插入光标,即可同时编辑这些行
- Ctrl+Shift+M: 选择括号内的内容
- Ctrl+Shift+P: 打开命令框
- Ctrl+T: 左右字母互换
- Ctrl+Tab: 按文件浏览过的顺序,切换当前窗口的标签页
- Ctrl+U: 自动读取图片宽高
- Ctrl+Y: 恢复撤销
- Ctrl+Z: 撤销
- Esc: 退出光标多行选择,退出搜索框,命令框等
- F11: 全屏模式
- F6: 单词检测拼写
- shift+↑: 向上选中多行
- Shift+→: 向右选中文本
- shift+↓: 向下选中多行
- Shift+←: 向左选中文本.
- Shift+F11: 免打扰模式
- Shift+Tab: 向左缩进
- Shift + A: 添加;
- Shift + D: 克隆;
- Ctrl + P: 设置父级;
- R: 旋转;
- G: 移动;
- S: 缩放;
- L:选中当前鼠标指向的物体;
- Ctrl+J: 合并所选内容;
- E
- 挤出下一个骨骼;
- 挤出选中的面;
- Alt + E: 挤出相关菜单;
- 重复挤出;
- 旋绕;
- [选中面时]
- 挤出面;
- 沿法相挤出面;
- 挤出各个面;
- 挤出流形;
- P: 分离选中内容;
- Shift + I: 添加IK;
- Ctrl + Shift + B: 菜单;
- gg
- 光标移至首行
- G
- 光标移至末行
- u
- 撤回
- Ctrl + R
- 取消撤回
- i
- 插入文本模式
- 在光标前插入文本
- a
- 插入文本模式
- 在一行后添加文本
- v
- 可视选择模式
- D
- 删除选择内容
- D
- 从当前光标位置删除至行尾
- delete
- 删除光标中的字符;
- :q
- :q!
- 强制退出
- :w
- :wq
- :set encoding=utf-8
- 设置编码为UTF-8
- :set fileencoding=utf-8
- 设置文件编码为UTF-8
- :set backspace=2
- 设置backspace按键可以删除任何字符
- :%!xxd
- 将二进制文件的乱码内容翻译为二进制
- :%!xxd -r
- 返回至乱码内容
- :goto 10
- 跳转到第10个字
- :10
- 跳转到第10行
- ssh-keygen -t rsa -C '2656980584@qq.com'
- 生成公钥;
- 运行后
ls ~/.ssh/
中包含id_rsa.pub
; cat ~/.ssh/id_rsa.pub
查看公钥内容;
- git config --global user.name "用户名"
- git config -- global user.email "邮箱"
- git config --global http.postBuffer 1048576000
- 增大缓存容量,单位是Byte, 1048576000即1G。
- ssh -T git@gitte.com || ssh -T git@github.com
- 建立连接;
Received disconnect from 162.241.169.11 port 22:2: Too many authentication failures Disconnected from 162.241.169.11 port 22
- 将
/etc/ssh/sshd_config
中MaxAuthTries 10修改大些;
- 将
-
git init
- 初始化仓库;
-
git add
- 将文件添加到本地仓库提交缓存;
git add test.txt
;
- 将文件添加到本地仓库提交缓存;
-
-- all: 所有改动文件都添加到缓存区;
-
git restore
- 修复指定文件:
git restore test.txt
; - 从某个提交(例如 HEAD~1)中恢复文件:
git restore --source=HEAD~1 file.txt
- 修复指定文件:
-
git commit
- -m: 将提交描述信息作为参数;
git commit -m "添加了新文件\"test.txt\"。 "
;git commit test.txt -m "更新单独文件"
; - --amend: 改写提交信息;
git --amend
;
- -m: 将提交描述信息作为参数;
-
git log
- 查看日志;
- --stat: 看到每次提交的简略的统计信息;
- -- graph
- --pretty=oneline
- --abbrev-commit
-
git status
- 查看文件是否被改动;
-
git checkout
-
切换分支;
git checkout master
; -
--: 将文件撤销到最近一次修改的状态;
git checkout -- test.txt
;
-
-
git rm
- 删除文件;
- -r: 删除文件夹;
- --cached: 仅删除缓存, 保留原文件;
-
git reset
- 清空缓存区;
-
git reflog
- 查看提交历史;
-
git merge
- 合并分支;
git merge dev
;
- 合并分支;
-
git branch
- -a: 查看分支;
git branch -a master
; - -D: 删除本地分支;
git branch -D tmp
; - -m: 修改分支名称;
git branch -m dev newdev
;
- -a: 查看分支;
-
git stash
- 保存当前工作状态;
- list: 查看当前存储了多少工作状态;
git stash list
;
-
git fetch
- 拉取远程所有分支;
- 拉取指定分支最新内容;
git fetch dev
;
-
git diff
- 查看不同分支文件差异;
git diff master dev test.txt
;
- 查看不同分支文件差异;
-
git clone
- 克隆默认分支;
- -b: 选择分支克隆;
git clone -b dev
; fatal: unable to access 'https://github.com/B4m600/Sheeps/': SSL certificate problem: unable to get local issuer certificate
git config --global http.sslverify false
-
git push
git push <远程主机名> <本地分支名>:<远程分支名>
;- 如果本地分支名与远程分支名相同:
git push <远程主机名> <本地分支名>
; - --force: 如果本地版本与远程版本有差异,但又要强制推送;
- --delete: 删除主机的分支;
git push origin --delete master
; fatal: The current branch master has no upstream branch.
- **原因:**没有将本地的分支与远程仓库的分支进行关联
git branch
master
git branch -a
remotes/origin/master
- 这时由于远程仓库太多,且分支较多。在默认情况下,
git push
时一般会上传到origin
下的master
分支上,然而当repository
和branch
过多,而又没有设置关联时,git就会产生疑问,因为它无法判断你的push目标。 - 解决:
git push --set-upstream origin master
git push -u origin master
-
like
- like '王%' -> "王五六七八..."
- like '张_' -> "张三"; "张四"
-
is null
-
is not null
SELECT * from B4m600 WHERE Name IS NOT NULL;
-
primary key
- 约束唯一标识数据库表中的每条记录。
- 主键必须包含唯一的值。(定义主键)
- 主键列不能包含 NULL 值。
- 每个表都应该有一个主键,并且每个表只能有一个主键。
create table C (Cno Char(4) primary key, Cname Char(20), Cheadteacher Char(20)unique not null, Cmonitor Char(20) );
-
foreign key
- 一个表中的 FOREIGN KEY 指向另一个表中的 PRIMARY KEY。
- Example-Person表:
Id_P LastName FirstName Address City 1 Adams John Oxford Street London 2 Bush George Fifth Avenue New York 3 Carter Thomas Changan Street - Example-Order表:
Id_O OrderNo Id_P 1 77895 3 2 44678 3 3 22456 1 4 24562 1 - "Persons" 表中的 "Id_P" 列是 "Persons" 表中的 PRIMARY KEY。
- "Orders" 表中的 "Id_P" 列是 "Orders" 表中的 FOREIGN KEY。
CREATE TABLE Orders ( Id_O int NOT NULL, OrderNo int NOT NULL, Id_P int, PRIMARY KEY (Id_O), FOREIGN KEY (Id_P) REFERENCES Persons(Id_P) )
CREATE TABLE Orders ( Id_O int NOT NULL PRIMARY KEY, OrderNo int NOT NULL, Id_P int FOREIGN KEY REFERENCES Persons(Id_P) )
-
unique
- 唯一键,用来保证对应的字段中的数据唯一; 用来保证对应的字段中的数据唯一的;
- 约束唯一标识数据库表中的每条记录; 和 PRIMARY KEY 约束均为列或列集合提供了唯一性的保证; PRIMARY KEY 拥有自动定义的 UNIQUE 约束。
- 每个表可以有多个 UNIQUE 约束,但是每个表只能有一个 PRIMARY KEY 约束。
- 唯一键允许字段数据为NULL,NULL可以有多个(NULL不参与比较)。
CREATE TABLE Persons ( Id_P int NOT NULL, LastName varchar(255) NOT NULL, FirstName varchar(255), Address varchar(255), City varchar(255), UNIQUE (Id_P) )
CREATE TABLE Persons ( Id_P int NOT NULL UNIQUE, LastName varchar(255) NOT NULL, FirstName varchar(255), Address varchar(255), City varchar(255) )
-
check ({condition})
- 对单个列定义 CHECK 约束,那么该列只允许特定的值; 对一个表定义 CHECK 约束,那么此约束会在特定的列中对值进行限制。
CREATE TABLE Persons ( Id_P int NOT NULL, CHECK (Id_P>0) )
CREATE TABLE Persons ( Id_P int NOT NULL CHECK (Id_P>0), )
-
in
- IN 操作符允许我们在 WHERE 子句中规定多个值。
SELECT column_name(s) FROM table_name WHERE column_name IN (value1,value2,...)
- 选取姓氏{LastName}为 Adams 和 Carter 的人:
Id LastName FirstName Address City 1 Adams John Oxford Street London 2 Bush George Fifth Avenue New York 3 Carter Thomas Changan Street SELECT * FROM Persons WHERE LastName IN ('Adams','Carter')
-
cross join: 笛卡尔乘积;
- show databases;
- 显示全部数据库
- use 数据库名;
- 指定数据库
- show tables;
- 显示当前库中的全部表
- show tables from {指定库};
- 显示指定库中的全部表
- show columns from {指定表};
- 显示当前表中的结构
-
select * from {表名}
- 查看表的全部信息;
- where {参数名}={指定值} (AND ...);
- where {姓名} like {李_};
- 匹配李+一个字;
- where {姓名} like {李%};
- 匹配李+任意长度内容;
- order by {参数名} {ASC|DESC};
- ASC:升序(默认);
- DESC:降序;
-
select {function}({参数名}) from {表名};
- AVG:平均值; 参数为数值型;
- MAX:最大值;
- MIN:最小值;
- SUM:求和; 参数为数值型;
- COUNT:参数对应的值的个数;
# 查询所有学生的姓名和性别,并按照性别分组,计算每组学生人数。 SELECT Sname, Ssex, COUNT(*) as StudentCount FROM Student GROUP BY Ssex;
# 查询所有学生的姓名和成绩,并按照成绩降序排列,取出前10个。 SELECT Sname, Grade FROM Student,SC WHERE Student.Sno = SC.Sno ORDER BY Grade DESC LIMIT 10;
# 查询所有学生的姓名和成绩,并筛选出成绩大于等于80分的学生。 SELECT Sname, Grade FROM Student,SC WHERE Student.Sno = SC.Sno AND SC.Grade >=80;
-
select * from {表A} cross join {表B} / select * from {表A}, {表B};
- 笛卡尔乘积;
-
select A.id,A.name,B.age from {表A} A join {表B} B on A.id = B.id;
-
SHOW FUNCTION STATUS;
/SELECT * FROM information_schema.routines WHERE routine_type = 'FUNCTION';
-
将多个select语句(两个或多个)的结果组合到一个结果集中,并删除结果集中的重复数据。
-
union中的每个查询必须拥有相同的列数。
-
select column,…from table1 union select column,…from table2;
-
select name,sec,age from pte union select 1,2,3 from pte;
-
order by
- 用来判断表的列数(二分法)。
select * from pte order by 2;
-
group by
- select id,AVG(grade) from sc where grade > 80 group by id;
- id重复时根据id分组;
- select id,AVG(grade) from sc where grade > 80 group by id;
-
create database {数据库名};
- 建立数据库;
- create datebase {数据库名} character set utf8;
- 设置字符编码;
-
create table {表名}({字段1} {字段类型1}, {字段2} {字段类型2}...);
- create table {表名}(pid INT, name CHAR(20), price INT);
- show create table {表名};
- 显示已创建的表;
-
create trigger {触发器名} {INSERT|UPDATE|DELETE} {检测对象} ON {表名} ... ;
DELIMITER // CREATE TRIGGER [触发器的名字] [触发器执行时机] [触发器监测的对象] ON [表名] FOR EACH ROW [触发器主体代码]// DELIMITER ; DELIMITER //:MySQL 默认分隔符是; 但在触发器中,我们使用 // 表示触发器的开始与结束。 [触发器的名字]:这里填写触发器的名字 [触发器执行时机]:这里设置触发器是在关键动作执行之前触发,还是执行之后触发。 [触发器监测的对象]:触发器可以监测 INSERT、UPDATE、DELETE 的操作; 当监测的命令对触发器关联的表进行操作时,触发器就被激活了。 [表名]:将这个触发器与数据库中的表进行关联,触发器定义在表上,也附着在表上,如果这个表被删除了,那么这个触发器也随之被删除。 FOR EACH ROW:这句表示只要满足触发器触发条件,触发器都会被执行,也就是说带上这个参数后,触发器将监测每一行对关联表操作的代码,一旦符合条件,触发器就会被触发。 [触发器主体代码]:这里是当满足触发条件后,被触发执行的代码主体。这里可以是一句 SQL 语句,也可以是多行命令。如果是多行命令,那么这些命令要写在 BEGIN...END 之间。
-
create schema {模式名} authorization {用户名};
- 为用户WANG定义一个学生-课程模式S-T:
CREATE SCHEMA "S-T" AUTHORIZATION WANG;
- 为用户ZHANG创建了一个模式TEST,并且在其中定义一个表TABE1;
CREATE SCHEMA TEST AUTHORIZATION ZHANG CREATE TABLE TABE1 ( COL1 SMALLINT, COL2 INT, COL3 CHAR(20), COL4 NUMERIC(10,3), COL5 DECIMAL(5,2) );
- 为用户WANG定义一个学生-课程模式S-T:
-
CREATE USER '{新用户名}'@'localhost' IDENTIFIED BY '{密码}';
CREATE USER 'SHBMS_USER'@'localhost' IDENTIFIED BY 'your_password';
- 创建用户。
GRANT ALL PRIVILEGES ON shbms_db.* TO 'SHBMS_USER'@'localhost';
- 授权用户至指定数据库。
-
drop schema {模式名} {CASCADE|RESTRICT}
-
CASCADE(级联)
- 删除模式的同事把该模式中所有的数据库对象全部删除
-
RESTRICT(限制)
- 如果该模式中定义了下属的数据库对象(如表、视图等),则拒绝该删除语句的执行
-
删除模式ZHANG,同时该模式中定义的表TABE1也被删除:
DROP SCHEMA ZHANG CASCADE;
-
ALTER TABLE table
ADD [COLUMN] column_name_1 column_1_definition [FIRST|AFTER existing_column],
ADD [COLUMN] column_name_2 column_2_definition [FIRST|AFTER existing_column],
...;
- alter table MyTB add {新字段} {新字段类型};
- 给表添加字段;
- alter table MyTB drop price;
- 给表删除字段;
- alter table MyTB modify {旧字段} {新字段类型};
- 修改字段类型;
- alter table MyTB change {旧字段名} {新字段名} {新字段类型}
- 修改字段名和类型;
- 在一个表中增加一列:
alter table TABLE_NAME add column NEW_COLUMN_NAME varchar(20) not null ;
-
insert into {表名}({列名1}, {列名2}, {列名3}...)
- values({列值1},{列值2},{列值3},...);
- 列名与值一一对应即可,顺序可以与表中的顺序不一致;
- 列名可以只选部分;
insert into fruit(id,name,price,num) values(1,"香蕉",3.11,10); insert into fruit
-
insert into {表名}
- values({列值1},{列值2},{列值3},...);
- 默认填写所有列名;
-
truncate table {表名}
- 删除表中的所有数据,释放空间,但是保留表的结构,不能与where一起使用,删除数据后不可以回滚。
-
drop
- drop table {表名}
- 将表的数据直接删除,以及删除表的结构同时释放空间,删除数据后无法找回。
- drop table {表名}
-
delete
- 用于删除表中的行。
DELETE FROM {table_name} WHERE {condition};
- Update {表名} set {属性} = {value} [where ...]
locale -a
-->C
C.UTF-8
POSIX #默认
env LANG=C.UTF-8 /bin/bash
# 修改Linux默认字符集
- 创建表时设置默认字符集
create table Test(num INT) DEFAULT CHARACTER SET utf8;
- 创建数据库时设置默认字符集
create database Test DEFAULT CHARACTER SET utf8;
-
flush privileges
-
source C:\Users\LEGION\Desktop\test.sql
-
create user root@'%' identified by '123456'; grant all privileges on *.* to root@'%' with grant option;
-
desc {表名}
mysql> desc goods_book;
+-------+------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+------+------+-----+---------+-------+
| id | int | YES | | NULL | |
+-------+------+------+-----+---------+-------+
1 row in set (0.02 sec)
- sqlmap -u url -dbs
- 查找全部库(暴库)
- sqlmap -u url --current-user
- 当前使用的账户
- sqlmap -u url -b
- 检索DBMS Banner
- sqlmap -u url --current-db
- 当前的数据库
- sqlmap -u url --hostname
- 当前主机名
- sqlmap -u url --is-dba
- 检测当前用户是否为数据库管理员
- sqlmap -u url -passwords
- MySql的登录账户和密码
- sqlmap -u url -D 指定数据库名 -tables 指定数据库名
- sqlmap -u url --dbms=数据库名 --current-db
- python -m http.server 9999
- clear
- pwd
- 工作目录
- chmod
- chmod +x Demo.exe
- cat
- 查看文本文件内容
- du
du -sh
- 以MB为单位查看当前目录的大小。
- rm
- -r: 递归删除
- -f: 不要求确认
- /set time day
- /give [name] [item]
- /spawnpoint [name]
- /weather clear
- /xp add [name]
- hydra -L u.txt -P p.txt {ip} telnet
- hydra -l {用户名} -p {密码字典} -t {线程} -vV -e ns {ip} ssh
- hydra -l 用户名 -p 密码字典 -t 线程 -o save.log -vV ip ssh
- -l 登录名 如:-l root
- -L 读取登录文件名 如:-L D:\login.txt
- -p 密码 如:-p 123456
- -P 读取密码文件名,如 -P D:\passwords.txt
- -C 冒号分隔“登录:通行证”格式
- -M 要攻击的服务器列表,每行一个条目,“:”指定端口
- -t 并行运行任务数(每个主机,默认值:16),如 -t 10
- nmap {ip}
- nmap {ip1} {ip2}
- 扫描多个目标。
- nmap -vv {ip} [|] nmap -v {ip}
- 详细描述输出扫描。
- nmap -p 3389,20-200 {ip}
- 扫描3389端口和20至200之间的端口
- nmap 192.168.227.1/24 -exlude 192.168.227.1
- 扫描除去某个ip外的所有子网主机
- nmap 10.130.1.1/24 -excludefile gov.txt
- 扫描除过某一个文件中的ip外的子网主机
- nmap -sL 192.168.227.1/24
- 显示扫描的所有主机的列表
- nmap -sP {ip}
- ping扫描。
nmap -sP 192.168.227.1-255
- 扫描内网的一个ip范围,用来发现内网的主机。
- nmap -sS {ip}
- SYN半开放扫描。
- 不需要通过完整的握手,就能获得远程主机的信息。
- Nmap发送SYN包到远程主机,但是它不会产生任何会话.因此不会在目标主机上产生任何日志记录,因为没有形成会话。
- 扫描类型默认Tcp SYN,需要root/administrator权限。
- nmap -sT {ip}
- TCP扫描。
- 只适用于找出TCP和UDP端口。
- nmap -sU {ip}
- UDP扫描。
- nmap -sF {ip}
- FIN标志的数据包扫描。
- nmap -sV {ip}
- Version版本检测扫描。
- 用来扫描目标主机和端口上运行的软件的版本。
- 速度较慢。
- nmap -O {ip}
- OS操作系统类型探测。
-
nmap --script vuln {ip}
- 扫描服务器的常见漏洞。
-
nmap --script ftp-anon {ip}
- 检查FTP是否开启匿名登陆。
nmap --script ftp-anon <target> PORT STATE SERVICE 21/tcp open ftp | ftp-anon: Anonymous FTP login allowed (FTP code 230) | -rw-r--r-- 1 1170 924 31 Mar 28 2001 .banner | d--x--x--x 2 root root 1024 Jan 14 2002 bin | d--x--x--x 2 root root 1024 Aug 10 1999 etc | drwxr-srwt 2 1170 924 2048 Jul 19 18:48 incoming [NSE: writeable] | d--x--x--x 2 root root 1024 Jan 14 2002 lib | drwxr-sr-x 2 1170 924 1024 Aug 5 2004 pub |_Only 6 shown. Use --script-args ftp-anon.maxlist=-1 to see all.
-
nmap --script=mysql-brute {ip}
- 对MySQL进行暴破解。
nmap --script=mysql-brute <target> 3306/tcp open mysql | mysql-brute: | Accounts | root:root - Valid credentials
-
nmap -p 1433 --script ms-sql-brute --script-args userdb=customuser.txt,passdb=custompass.txt {ip}
- 对MsSQL进行暴破解。
nmap -p 1433 --script ms-sql-brute --script-args userdb=customuser.txt,passdb=custompass.txt <host> | ms-sql-brute: | [192.168.100.128\TEST] | No credentials found | Warnings: | sa: AccountLockedOut | [192.168.100.128\PROD] | Credentials found: | webshop_reader:secret => Login Success | testuser:secret1234 => PasswordMustChange |_ lordvader:secret1234 => Login Success
-
nmap --script oracle-brute -p 1521 --script-args oracle-brute.sid=ORCL {ip}
- 对Oracle数据库进行暴破解。
nmap --script oracle-brute -p 1521 --script-args oracle-brute.sid=ORCL <host> PORT STATE SERVICE REASON 1521/tcp open oracle syn-ack | oracle-brute: | Accounts | system:powell => Account locked | haxxor:haxxor => Valid credentials | Statistics |_ Perfomed 157 guesses in 8 seconds, average tps: 19
-
nmap -p 5432 --script pgsql-brute {ip}
- 对pgSQL的暴力破解。
nmap -p 5432 --script pgsql-brute <host> 5432/tcp open pgsql | pgsql-brute: | root:<empty> => Valid credentials |_ test:test => Valid credentials
-
nmap -p 22 --script ssh-brute --script-args userdb=users.lst,passdb=pass.lst --script-args ssh-brute.timeout=4s {ip}
- 对SSH进行暴力破解。
nmap -p 22 --script ssh-brute --script-args userdb=users.lst,passdb=pass.lst --script-args ssh-brute.timeout=4s <target> 22/ssh open ssh | ssh-brute: | Accounts | username:password | Statistics |_ Performed 32 guesses in 25 seconds.
-
nmap --script dns-brute {ip}
- 利用DNS进行子域名暴力破解。
nmap --script dns-brute www.baidu.com λ nmap --script dns-brute www.baidu.com Starting Nmap 7.50 ( https://nmap.org ) at 2017-07-25 13:12 ? Nmap scan report for www.baidu.com (180.97.33.108) Host is up (0.018s latency). Other addresses for www.baidu.com (not scanned): 180.97.33.10 Not shown: 998 filtered ports PORT STATE SERVICE 80/tcp open http 443/tcp open https Host script results: | dns-brute: | DNS Brute-force hostnames: | admin.baidu.com - 10.26.109.19 | mx.baidu.com - 61.135.163.61 | svn.baidu.com - 10.65.211.174 | ads.baidu.com - 10.42.4.225 Nmap done: 1 IP address (1 host up) scanned in 92.64 seconds
-
nmap --script http-vmware-path-vuln -p 80,443,8222,8333 {ip}
- 检查VMWare ESX,ESXi和服务器(CVE-2009-3733)中的路径遍历漏洞。
nmap --script http-vmware-path-vuln -p 80,443,8222,8333 <host> | http-vmware-path-vuln: | VMWare path traversal (CVE-2009-3733): VULNERABLE | /vmware/Windows 2003/Windows 2003.vmx | /vmware/Pentest/Pentest - Linux/Linux Pentest Bravo.vmx | /vmware/Pentest/Pentest - Windows/Windows 2003.vmx | /mnt/vmware/vmware/FreeBSD 7.2/FreeBSD 7.2.vmx | /mnt/vmware/vmware/FreeBSD 8.0/FreeBSD 8.0.vmx | /mnt/vmware/vmware/FreeBSD 8.0 64-bit/FreeBSD 8.0 64-bit.vmx |_ /mnt/vmware/vmware/Slackware 13 32-bit/Slackware 13 32-bit.vmx
-
nmap --script vmware-version -p 443 {ip}
- 查询VMware服务器(vCenter,ESX,ESXi)SOAP API以提取版本信息。
λ nmap --script vmware-version -p 443 10.0.1.4 Starting Nmap 7.50 ( https://nmap.org ) at 2017-07-25 12:26 ?D1ú±ê×?ê±?? Nmap scan report for 10.0.1.4 Host is up (0.0019s latency). PORT STATE SERVICE 443/tcp open https | vmware-version: | Server version: VMware ESXi 6.5.0 | Build: 4887370 | Locale version: INTL 000 | OS type: vmnix-x86 |_ Product Line ID: embeddedEsx Service Info: CPE: cpe:/o:vmware:ESXi:6.5.0 Nmap done: 1 IP address (1 host up) scanned in 6.28 seconds
- -iL filename 从文件中读取待检测的目标,文件中的表示方法支持机名,ip,网段
- -iR hostnum 随机选取,进行扫描.如果-iR指定为0,则是无休止的扫描
- --exclude host1[, host2] 从扫描任务中需要排除的主机
- --exculdefile exclude_file 排除文件中的IP,格式和-iL指定扫描文件的格式相同
- -sL 仅仅是显示,扫描的IP数目,不会进行任何扫描
- -sn ping扫描,即主机发现
- -Pn 不检测主机存活
- -PS/PA/PU/PY[portlist] TCP SYN Ping/TCP ACK Ping/UDP Ping发现
- -PE/PP/PM 使用ICMP echo, timestamp and netmask 请求包发现主机
- -PO[prococol list] 使用IP协议包探测对方主机是否开启
- -n/-R 不对IP进行域名反向解析/为所有的IP都进行域名的反响解析
- -sS/sT/sA/sW/sM TCP SYN/TCP connect()/ACK/TCP窗口扫描/TCP Maimon扫描
- -sU UDP扫描
- -sN/sF/sX TCP Null,FIN,and Xmas扫描
- --scanflags 自定义TCP包中的flags
- -sI zombie host[:probeport] Idlescan
- -sY/sZ SCTP INIT/COOKIE-ECHO 扫描
- -sO 使用IP protocol 扫描确定目标机支持的协议类型
- -b “FTP relay host” 使用FTP bounce scan
- -p 特定的端口 -p80,443 或者 -p1-65535
- -p U:PORT 扫描udp的某个端口, -p U:53
- -F 快速扫描模式,比默认的扫描端口还少
- -r 不随机扫描端口,默认是随机扫描的
- --top-ports "number" 扫描开放概率最高的number个端口,出现的概率需要参考nmap-services文件,ubuntu中该文件位于/usr/share/nmap.nmap默认扫前1000个
- --port-ratio "ratio" 扫描指定频率以上的端口
- -sV 开放版本探测,可以直接使用-A同时打开操作系统探测和版本探测
- --version-intensity "level" 设置版本扫描强度,强度水平说明了应该使用哪些探测报文。数值越高,服务越有可能被正确识别。默认是7
- --version-light 打开轻量级模式,为--version-intensity 2的别名
- --version-all 尝试所有探测,为--version-intensity 9的别名
- --version-trace 显示出详细的版本侦测过程信息
- -sC 根据端口识别的服务,调用默认脚本
- --script=”Lua scripts” 调用的脚本名
- --script-args=n1=v1,[n2=v2] 调用的脚本传递的参数
- --script-args-file=filename 使用文本传递参数
- --script-trace 显示所有发送和接收到的数据
- --script-updatedb 更新脚本的数据库
- --script-help=”Lua script” 显示指定脚本的帮助
- -O 启用操作系统检测,-A来同时启用操作系统检测和版本检测
- --osscan-limit 针对指定的目标进行操作系统检测(至少需确知该主机分别有一个open和closed的端口)
- --osscan-guess 推测操作系统检测结果,当Nmap无法确定所检测的操作系统时,会尽可能地提供最相近的匹配,Nmap默认进行这种匹配 防火墙/IDS躲避和哄骗
- -f; --mtu value 指定使用分片、指定数据包的MTU.
- -D decoy1,decoy2,ME 使用诱饵隐蔽扫描
- -S IP-ADDRESS 源地址欺骗
- -e interface 使用指定的接口
- -g/ --source-port PROTNUM 使用指定源端口
- --proxies url1,[url2],... 使用HTTP或者SOCKS4的代理
- --data-length NUM 填充随机数据让数据包长度达到NUM
- --ip-options OPTIONS 使用指定的IP选项来发送数据包
- --ttl VALUE 设置IP time-to-live域
- --spoof-mac ADDR/PREFIX/VEBDOR MAC地址伪装
- --badsum 使用错误的checksum来发送数据包
- -oN 将标准输出直接写入指定的文件
- -oX 输出xml文件
- -oS 将所有的输出都改为大写
- -oG 输出便于通过bash或者perl处理的格式,非xml
- -oA BASENAME 可将扫描结果以标准格式、XML格式和Grep格式一次性输出
- -v 提高输出信息的详细度
- -d level 设置debug级别,最高是9
- --reason 显示端口处于带确认状态的原因
- --open 只输出端口状态为open的端口
- --packet-trace 显示所有发送或者接收到的数据包
- --iflist 显示路由信息和接口,便于调试
- --log-errors 把日志等级为errors/warings的日志输出
- --append-output 追加到指定的文件
- --resume FILENAME 恢复已停止的扫描
- --stylesheet PATH/URL 设置XSL样式表,转换XML输出
- --webxml 从namp.org得到XML的样式
- --no-sytlesheet 忽略XML声明的XSL样式表
- -6 开启IPv6
- -A OS识别,版本探测,脚本扫描和traceroute
- --datedir DIRNAME 说明用户Nmap数据文件位置
- --send-eth / --send-ip 使用原以太网帧发送/在原IP层发送
- --privileged 假定用户具有全部权限
- --unprovoleged 假定用户不具有全部权限,创建原始套接字需要root权限
- -V 打印版本信息
- -h 输出帮助
- 安装(3.1.1):
python setup.py install --standard-lib
- -j6: 使用CPU多线程进行编译。
- plantform
- windows
- bits
- 64
- 32
- target
- release_debug
- release
- debug