1 缓冲区溢出攻击
原理:各类语言中存在风险函数,例如strcpy等,如果参数实际内容超出缓冲区大小,则溢出部分会改写系统栈。黑客通过指定外部传入参数的内容和大小,来将原先缓冲区撑爆,则溢出的信息就会被作为系统栈的内容存储。
应对策略:采用更安全的函数,例如strncpy。
2 sql注入攻击
原理:例如mysql语句(其中str是web界面接收到的用户命令)
update test_table set test_word=1 where id=(str)
如果将str设置为
100' or '1=1
则真实的mysql语句变为
update test_table set test_word=1 where id='100' or '1=1'
其中
'1=1'
必为真。
因此该语句无论如何都会执行。
应对策略:对于从表单中读入的信息,需要过滤处理其中的特殊字符。
网友评论