本文目录一览:
web安全要学什么?
Web安全的范围实在太大,哪些先学,哪些后学,如果没有系统的路线会降低大家效率,对于刚入门的同学们来说简直就是“噩梦”。所以,这篇类似学习路线的文章,希望可以帮助刚入门的萌新们少走弯路。(文末附学习资料及工具领取)
首先我们来看看企业对Web安全工程师的岗位招聘需求是什么?
1职位描述
对公司各类系统进行安全加固;
对公司网站、业务系统进行安全评估测试(黑盒、白盒测试)
对公司安全事件进行响应、清理后门、根据日志分析攻击途径
安全技术研究,包括安全防范技术、黑客技术等;
跟踪最新漏洞信息,进行业务产品的安全检查。
2岗位要求
熟悉Web渗透测试方法和攻防技术,包括SQL注入、XSS跨站、CSRF伪造请求、命令执行等OWSP TOP10 安全漏洞与防御;
熟悉Linux、Windows不同平台的渗透测试,对网络安全、系统安全、应用安全有深入理解和自己的认识;
熟悉国内外安全工具,包括Kali、Linux、Metasploit、Nessus、Namp、AWVS、Burp等;
对Web安全整体有深刻理解,有一定漏洞分析和挖掘能力;
根据岗位技能需求,再来制定我们的学习路径,如下:
一、Web安全学习路径
01 HTTP基础
只有搞明白Web是什么,我们才能对Web安全进行深入研究,所以你必须了解HTTP,了解了HTTP,你就会明白安全术语的“输入输出”。黑客通过输入提交“特殊数据”,特殊数据在数据流的每个层处理,如果某个层没处理好,在输出的时候,就会出现相应层的安全问题。关于HTTP,你必须要弄明白以下知识:
HTTP/HTTPS特点、工作流程
HTTP协议(请求篇、响应篇)
了解HTML、Javascript
Get/Post区别
Cookie/Session是什么?
02 了解如下专业术语的意思
Webshell
菜刀
0day
SQL注入
上传漏洞
XSS
CSRF
一句话木马
......
03 专业黑客工具使用
熟悉如何渗透测试安全工具,掌握这些工具能大大提高你在工作的中的效率。
Vmware安装
Windows/kali虚拟机安装
Phpstudy、LAMP环境搭建漏洞靶场
Java、Python环境安装
子域名工具 Sublist3r
Sqlmap
Burpsuite
Nmap
W3af
Nessus
Appscan
AWVS
04 XSS
要研究 XSS 首先了解同源策略 ,Javascript 也要好好学习一下 ,以及HTML实体 HTML实体的10 或16进制还有Javascript 的8进制和16进制编码,最终掌握以下几种类型的XSS:
反射型 XSS:可用于钓鱼、引流、配合其他漏洞,如 CSRF 等。
存储型 XSS:攻击范围广,流量传播大,可配合其他漏洞。
DOM 型 XSS:配合,长度大小不受限制 。
05 SQL注入
所谓SQL注入,就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令。你需要了解以下知识:
SQL 注入漏洞原理
SQL 注入漏洞对于数据安全的影响
SQL 注入漏洞的方法
常见数据库的 SQL 查询语法
MSSQL,MYSQL,ORACLE 数据库的注入方法
SQL 注入漏洞的类型:数字型注入 、字符型注入、搜索注入 、盲注(sleep注入) 、Sqlmap使用、宽字节注入
SQL 注入漏洞修复和防范方法
一些 SQL 注入漏洞检测工具的使用方法
06 文件上传漏洞
了解下开源编辑器上传都有哪些漏洞,如何绕过系统检测上传一句话木马、WAF如何查杀Webshell,你必须要掌握的一些技能点:
1.客户端检测绕过(JS 检测)
2.服务器检测绕过(目录路径检测)
3.黑名单检测
4.危险解析绕过攻击
5..htaccess 文件
6.解析调用/漏洞绕过
7.白名单检测
8.解析调用/漏洞绕过
9.服务端检测绕过-文件内容检测
10.Apache 解析漏洞
11.IIS 解析漏洞
12.Nginx 解析漏洞
07 文件包含漏洞
去学习下
include() include_once() require() require_once() fopen() readfile()
这些php函数是如何产生文件包含漏洞, 本地包含与远程包含的区别,以及利用文件包含时的一些技巧如:截断 /伪url/超长字符截断等 。
08 命令执行漏洞
PHP代码中常见的代码执行函数有:
eval(), assert(), preg_replace(), call_user_func(), call_user_func_array(),create_function(), array_map()等。
了解这些函数的作用然后些搞清楚如何造成的代码执行漏洞。
09 CSRF 跨站点请求
为什么会造成CSRF,GET型与POST型CSRF 的区别, 如何防御使用 Token防止CSRF?
010 逻辑漏洞
了解以下几类逻辑漏洞原理、危害及学会利用这几类漏洞:
信息轰炸、支付逻辑漏洞、任意密码修改、越权访问、条件竞争、任意注册、任意登录、顺序执行缺陷、URL跳转漏洞.
011 XEE(XML外部实体注入)
当允许XML引入外部实体时,通过构造恶意内容,可以导致文件读取、命令执行、内网探测等危害。
012 SSRF
了解SSRF的原理,以及SSRF的危害。
SSRF能做什么?当我们在进行Web渗透的时候是无法访问目标的内部网络的,那么这个时候就用到了SSRF漏洞,利用外网存在SSRF的Web站点可以获取如下信息。
1.可以对外网、服务器所在内网、本地进行端口扫描,获取一些服务的banner信息;
2.攻击运行在内网或本地的应用程序(比如溢出);
3.对内网Web应用进行指纹识别,通过访问默认文件实现;
4.攻击内外网的Web应用,主要是使用get参数就可以实现的攻击(比如struts2,sqli等);
5.利用file协议读取本地文件等。
如果上述漏洞原理掌握的都差不多那么你就算入门Web安全了。
如果看了上面你还不知道具体如何学习?可参考合天网安实验室Web安全工程师岗位培养路径学习:网页链接
平假名 片假名一览表
五十音图平假名的演变
あ行あ(安)い(以)う(宇)え(衣)お(于)
か行か(加)き(几)く(久)け(计)こ(己)
さ行さ(左)し(之)す(寸)せ(世)そ(曾)
た行た(太)ち(知)つ(川)て(天)と(止)
な行な(奈)に(仁)ぬ(奴)ね(祢)の(乃)
は行は(波)ひ(比)ふ(布)へ(部的省略形)ほ(保)
ま行ま(末)み(美)む(武)め(女)も(毛)
や行や(也)ゆ(由)よ(与)
ら行ら(良)り(利)る(留)れ(礼)ろ(吕)
わ行わ(和)を(远)
五十音图片假名的由来
あ行ア(偏旁阝)イ(偏旁亻)ウ(部首宀)エ(工)オ(方)
か行カ(力)キ(几的草书体略形)ク(久的左侧)ケ(介的草书体略形)コ(己的上部)
さ行サ(散的起笔)シ(之的草书体变形)ス(须的草书体部分变形)セ(世的草书体略形)ソ(曾的起笔)
た行タ(多的部分)チ(千的部分变形)ツ(川的草书体变形)テ(天的草书体变形)ト(止的省略形)
な行ナ(奈的省略形)ニ(仁的省略形)ヌ(奴的省略形)ネ(偏旁礻)ノ(奈的省略形)
は行ハ(八)ヒ(比的部分)フ(不的草书体省略形)ヘ(部的草书体省略形)ホ(保的省略形)
ま行マ(末的草书体省略形)ミ(三的草书体变形)ム(牟的省略形)メ(女的省略形)モ(毛的草书体变形)
や行ヤ(也的草书体略形)ユ(由的草书体略形)ヨ(与的省略形)
ら行ラ(良的草书略形)リ(偏旁刂)ル(流的省略形)レ(礼的省略形)ロ(吕德省略形下部)
わ行ワ(和的草书体略形)ヲ(乎的草书体略形)
日语的字母叫假名(仮名かな)。假名有两种字体,一种叫平假名(平仮名ひらがな)、一种叫片假名(片仮名かたかな)。平假名是借用汉字的草书形成的,用于书写和印刷。片假名是借用汉字的偏旁冠盖形成的,用于记载外来语和某些特殊词汇。此外,还有罗马字拼写假名,叫“罗马字拼音”。罗马字拼音一般用于拍发电报,书写商标、名片,以及缩写外来语词汇等,使用范围有逐渐扩大的趋势。如果你想学习日语可以来这个q群,首先是 478,中间是932,最后是026,里面可以学习和交流,也有资料可以下载。
2.假名分清音、浊音、半浊音和拔音等到四种。把清音按发音规律排成十行,每行五个假名,最末排上一个拔音“ん”,这样排成的表叫“五十音图”或“五十音表”。
3.五十音图中,横排的叫行,竖排的叫段,共十行,五段。每行每段都以一个假名命名。如あいうえお叫あ行、かきくけこ叫か行、あかさたなはまやらわ叫あ段、いきしちにひみいりい叫い段,其他类推。拔音“ん”独立于行、段之外。日语词典均按五十音图顺序排列,日语动词词尾也按五十音图的行、段变化,因此必须按行按段背熟五十音图。
日语只有あ、い、う、え、お五个元音,其它各行有假名,大部分由辅音K、S、T、N、H、M、Y、R、W、G、Z、D、B、P和五个元音拼成。因此,准确地发好五个元音,非常重要。や、ゆ、よ、わ是复元音。や、ゆ、よ是元音“い”分别和元音あ、う、お复合而成。わ是元音“う”和“あ”复合而成的。假名是音节字母,除拔音“ん”不能单独构成音节外,每个假名代表一个音节。か、さ、た、は各行假名,都有相对的浊音。は行还有半浊音。浊音和半浊音共有五行二十五个假名。浊音在假名的右上方用浊音符号“〝”表示。阗浊音在假名的右上方用阗浊音的符号“。”表示。浊音中ぢ和じ,づ和ず同音,所以实际上只有二十三个音。现代日语只有七十一个假名,六十八个音。
4.鼻浊音 が行假名出现在单词的中间或末尾时,应带点鼻音,读做 nga ngi ngu nge ngo .这种读法叫鼻浊音。
5.元音的无声化和元音“I、u”拼成的假名,如:き、し、ち、ひ、ぴ、く、す、つ、ふ、ぷ、等,后面遇到辅音为p、t、ts、k、h的假名时,则把“I、u”读的很轻,或者不发出声来。这种现象叫元音的无声化。
6.拔音:“ん”是有声鼻音,是辅助音,不能单独使用,只能附在其它假名的后面,共同构成一个音节。
7.长音: 把一个假名的元音拉长一拍发音叫长音。标记的方法是:あ段假名后加あ,い段假名后加い,う段假名后加う,え段假名后加い或え,お段假名后加う或お。外来语一律用长音符号“-”表示。罗马字在字母上用“∧”或“-”符号表示。
促音: 发音的时候,用发音器官的某一部分堵住气流,形成一个短促的顿挫,然后再使气流急冲而出。这种音叫促音。促音只能在か、さ、た、ぱ四行假名的前面,用小字的“つ”来表示。“つ”不发音,只作为促音符号。
8.拗音和拗长音い段假名和复元音や、ゆ、よ拼成的音叫拗音。表示拗音的や、ゆ、よ要写得小而靠右(横写要靠下侧)。拗音虽有两个假名,但要读成一音节,共占一拍时间。拗音共有三十六个,因其中有三个对发音相同,实际上只有三十三个音。把拗音拉长一拍,叫做拗长音。や拗音的长音以“あ”表示,ゆ拗音和よ拗音的长音以う表示。
拗促音 在拗音之后再接促音时,则构成拗促音。
拗拔音 在拗音之后再接拔音时,则构成拗拔音
菜鸟有关脚本注入的问题 .asp access javascript。。。。
搞了这么长时间编程,怎么就看不懂你说的话呢,所有都看不懂,麻烦你说清楚一点。
-----------------
比如你的原来网页是
span id="hacker"这是我的网页/span
form name="form1" method="POST"
input type="text" name="txt" /input type="submit" name="submit" /
/form
写完这个网页后你在你本地呢还是传到了服务器上?
你所说的你黑了你的网站是通过自己给网页代码里
输入了Script标签然后提交的么?
这样?
span id="hacker"这是我的网页/span
form name="form1" method="POST"
input type="text" name="txt" /input type="submit" name="submit" /
/form
scriptdocument.getElementById("hacker").innerHTML="我被黑了!";/script
是这个意思么?这怎么能叫你自己黑了你自己呢?还是说在浏览器地址栏里javascript:document.getElementById("hacker").innerHTML="我被黑了!";这样黑的自己呢?
如果说你自己通过表单发出去的请求并储存到数据库里
并在相应页面读取了出来,更改了你页面的值这种可以通过替换标签的做法使用Replace(text,"script","《script》")对上传上来的内容进行过滤,可以防止现在比较流行的xss攻击,第二种的话你不必担心,因为它只是存在于客户端的浏览器内存中,和服务器没有关系,就算是改了页面的内容也只能自己看到,关了浏览器再打开什么都没,
2.网页脚本漏洞很多很多,例如上传、注射、暴库、默认管理员、嗅探、社会工程学、猜密码等等等等很多很多,例如说通过注射,可以得到你的某个表,某个表里的内容,然后获取管理员账号获取更大权限的后台账号,再通过后台给服务器写入一个自己想要的asp代码,通过这个asp代码从而控制你的网站甚至是服务器,如果说是Mssql的asp网站那么如果得到一个db_owner权限注射,哪么在没有删除危险系统扩展存储过程的时候就可以列服务器的所有盘符目录,查找到你的网站,然后通过差异备份,备份一个任意文件名的asp文件到你的网站目录,顺便插入自己想要的代码,这样那个差异备份的数据库就会变成一个黑客用于控制的Webshell,上传就不用说了,通过上传漏洞上传一个webshell上去,直接就改代码了,后面的恕我不多介绍,你说怎样才能使服务器执行vbscript?
我晕,客户端发出请求------服务器IIS----IIS处理请求----到Asp文件---读取Asp文件内容----进行解析处理----解析完毕后---传输回客户端,整个流程是这样你说怎样执行?
%eval(Request("#"))%这样就可以接收键为#号的值并且在服务器运行了...懒得打字了..就这样。。