问:
本人最近开始自学后端,需要在个人电脑上安装服务器(8080端口)和数据库(3306端口)。由于需要在其他电脑上测试,不能简单地通过个人电脑的防火墙禁止对这些端口的访问。请问这样做安全吗?
我的电脑没有公网ip,日常使用校园网,没有配置任何内网穿透。请问这样是不是意味着来自校园网以外的设备无论如何都不能访问我的服务器和数据库?
答:
是的,由于没有公网IP,“内网”之外的IP无法主动请求到你的电脑。
另外,即便是在内网之中,你也很难受到攻击,因为服务器和数据库本身都是十分健全的软件,很少有漏洞可以利用。
有风险的是你写的程序,可能会有些常见的问题漏洞:
1. 跨站脚本攻击(XSS):攻击者通过注入恶意脚本,使得用户浏览器执行恶意代码,可以盗取用户信息或控制用户账号。
2. SQL注入漏洞:攻击者通过在用户输入的数据中注入恶意SQL代码,从而执行非法数据库操作,如盗取数据、修改数据等。
3. 跨站请求伪造(CSRF):攻击者利用用户已经登录的身份,向目标网站发送恶意请求,以实施各种攻击,如修改用户资料、发表恶意评论等。
4. 文件上传漏洞:未对用户上传的文件进行充分的校验和过滤,导致攻击者可以上传恶意文件进行攻击,如执行任意代码、获取服务器权限等。
5. 不安全的会话管理:开发者未正确管理用户会话,导致攻击者可以盗取用户的会话标识,冒充合法用户进行攻击。
6. 不正确的身份验证和授权:开发者未正确验证用户的身份或未限制用户的访问权限,导致攻击者可以冒充他人身份或访问未授权的资源。
但是这些漏洞,基本上影响的是你的自己开发的程序,对你自己的电脑基本没有危害。
但是第上述第4个问题可能会比较严重,即服务器被上传了恶意脚本,而且能够被服务器运行,这样才会影响你的“服务器”安全,轻一点的话,就是你的代码和数据库丢失加密,重一点的,就成了肉鸡了。
但一般情况下,也很好避免这些问题,当你开发的时候遵循一个原则,就是“程序”与“数据”分离,即上传的文件不要放到“本站”下,而是另外的目录(比如通过ftp),读取的时候,让服务器去“另外的目录”下读取,不要执行其他操作。基本上就能避免“中毒”了。只要恶意脚本不会被“执行”,那么所谓的危险也就局限在你的“网站功能”的安全上了,服务器就完全不用担心了。
最后补充一点,IPV6已经很普遍了,并且没有内外网之分,所以IPV6是能够访问到你的电脑的,但是一般并不会,因为IPV6本身很容易过期,且很难扫描,所以也无需太过担心。
原文标题:web初学者如何保证自身服务器安全?
原文地址:https://phpreturn.com/index/a649fc1db700aa.html
原文平台:PHP武器库
版权声明:本文由phpreturn.com(PHP武器库官网)原创和首发,所有权利归phpreturn(PHP武器库)所有,本站允许任何形式的转载/引用文章,但必须同时注明出处。