首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  PHP

网络应用中 PHP 被认为是最危险的编程语言,同不同意?

  •  
  •   autogen · 157 天前 · 4843 次点击
    这是一个创建于 157 天前的主题,其中的信息可能已经有所发展或是发生改变。
    网络应用中 PHP 被认为是最危险的编程语言,同不同意?

    86% 的 PHP 应用程序至少包含一个跨站脚本( XSS )漏洞;

    56% 的 PHP 应用程序至少包含一个 SQL 注入漏洞,著名的也是非常危险且易被利用的 web 应用漏洞之一;

    67% 的 PHP 应用程序允许目录遍历;

    61% 的 PHP 应用程序允许代码注入;

    58% 的 PHP 应用程序在凭证管理方面有问题;

    73% 的 PHP 应用程序存在加密问题;

    50% 的 PHP 应用程序允许信息泄露。
        1
    tongyifan   157 天前 via Android   ♥ 11
    那么,数据来源于?
        2
    bokchoys   157 天前 via iPhone
    不注意代码规范,都会如此吧?
        3
    autogen   157 天前
    @tongyifan Ref: Veracode. State of Software Security: Focus on Application Development
        4
    tongyifan   157 天前 via Android
    @autogen 去学习一下
        5
    wwww961h   157 天前   ♥ 1
    很正常,因为写 PHP 的新手确实更多,但是你不能质疑 PHP 的安全性,因为安全性是相对的,只有用不好工具的人,没有不好的工具,况且还是世界上最流行的工具,没有之一
        6
    lzxgh621   157 天前 via Android   ♥ 4
    想起 windows 是最不安全的系统言论
        7
    KasuganoSoras   157 天前   ♥ 3
    不同意,没有不安全的编程语言,只有不会写代码的人。
    照这个说法,Java Web 也不安全,前不久我给我朋友的一个 Java 写的网页管理系统做了一次安全测试,给我挖出一大堆 XSS、SQL 注入、CSRF 攻击,这能说明一个编程语言不安全吗?不能,只能说明写代码的人不够认真不够仔细。
    PHP 提供了大量的方法用于预防 XSS、SQL 注入等等漏洞,例如 preg_match 正则表达式匹配,mysqli_real_escape_string 字符串转义防止注入等,因此只要掌握了这些函数的使用方法,合理搭配合理运用,完全不用担心自己写的东西会不安全。

    另外,世界上没有绝对安全的系统,什么都可能有漏洞,只有不断去修复去填补。
        8
    KasuganoSoras   157 天前
    漏洞通常容易出现在:
    1. 新人的作品
    2. 中大型的项目
    3. 闭源,自用的项目
    新人作品有漏洞就不用说了,很正常的,刚学会一门编程语言,根本不懂得怎么做安全。
    中大型项目一般都是由团队开发的,越大的项目越复杂,更容易出现漏洞、bug。
    闭源的项目一般都是“能跑就行”,不太会追求代码整洁,同时缺少社区的支持和维护,隐藏的漏洞一般比较多。
        9
    crab   157 天前
    和语言无关,往前十几年那会 ASP 写的网站论坛商城拿个明小子都能扫出注入等等漏洞。
        10
    Bramblex2   157 天前
    php 容易出安全问题不是因为 php 烂(虽然 php 真的很烂),是因为 php 门槛低,php 程序员的平均水平低,以及 php 市场占有率极高。
        11
    zjsxwc   157 天前 via Android
    10 年前的言论
        12
    opengps   157 天前 via Android   ♥ 1
    安不安全取决于防御能力,php 很多流行框架确实有缺陷,却被用作底层。
    说说我网站,没用任何框架代码,几乎全程手写,所以也就没留下通用型的注入规则,至少想渗透入侵我网站不能用那些成品渗透工具,这也算一种防御,无招胜有招的那种
        13
    RobertYang   157 天前 via Android
    这个因素应该受不安全的人影响更大吧
        14
    samondlee   157 天前
    原来说 ASP 是最危险的语言
        15
    bestkayle   157 天前 via iPhone
    黑 php 的新姿势
        16
    dsnake1984   157 天前
    要不要我用 java 写出上述漏洞~
        17
    qce7   157 天前
    编程语言分两种:1.有一大堆缺点的 2.没人用的
        18
    qce7   157 天前
    @opengps 对于新手还有经验不足的人,手写不如用成熟的开源框架
        19
    telun   157 天前 via iPhone
    根据这个标准,那 windows 是最容易中病毒的操作系统
        20
    polymerdg   157 天前
    XSS 不是前端的祸么 ?
    这锅 PHP 也得背?
        21
    azoon   157 天前
    侧面反映 PHP 多人用
        22
    liuxu   157 天前
    现在黑 php 的都开始用百分比了么。。
        23
    guozhiyun   157 天前 via Android
    无脑黑
        24
    janxin   157 天前   ♥ 5
    100%的 XSS 漏洞存在与 JS 中,JS 才是最危险的语言!
        25
    littleylv   157 天前
    跟语言有毛线关系。无脑黑。
        26
    deepdark   157 天前 via Android
    PHP 危险函数确实比较多,开发者水平欠缺的话很容易写出漏洞。但你不能说它是最危险的编程语言,还是开发者的问题。虽然我是 php 黑,但这个锅 php 不能背
        27
    changdy   157 天前
    一直对安全比较好奇,求问下在 java 中发生的情况:
    一般来说 现在只要不是实习生 java 很难出现 sql 注入吧?
    目录遍历 也很少遇到过,java 应该很少有便利本地目录文件的需求或功能,
    至于代码注入,应该主要是第三方库吧,两三年前倒是见到过说 fastjson 有这个漏洞,

    话说 php 因为脚本语言的原因还是比 java 更容易出现漏洞吧?小白一枚,哪里不正确请帮忙扶正,
        28
    masker   157 天前 via Android
    这。。。秀智商下线吗。
        29
    whileFalse   157 天前 via iPhone
    你以为那些用 express 手撸的破玩意能好到哪儿去。
        30
    opengps   157 天前 via Android
    @qce7 确实,新人用的多,自然也就把缺点暴露的更多
    就像当年 linux 用户少的时候,很多人被误导说 linux 系统下不需要杀毒软件一样
        31
    wormcy   157 天前
    危险的是人
        32
    taotaodaddy   157 天前 via Android
    我 phper 永不为奴!
        33
    shehuizhuyi   157 天前
    和语言没关系 使用量多
        34
    whoami9894   157 天前 via Android   ♥ 1
    我觉得说的是有道理的,很大长度上是因为这种弱类型+动态类型+脚本语言本身的灵活随意性导致就不安全,能导致很多绕过。当然这也和开发者有关系,但你不能保每个开发者都有足够的安全经验。假如相同安全意识的两个程序员写 Java 和 PHP 相对来说一定是 Java 漏洞更少。

    举个例子,对于 webshell 的查杀,PHP 的灵活性总可以绕过检查,第一次看到这种东西我都惊了: $a = "foo"; $a();
        35
    fenglangjuxu   157 天前
    有这个数据可能是因为 php 被应用的比较广泛.
    还有就是一些老的版本还在被使用.
    还有就是项目可能没怎么使用大型的框架,现在的框架基本对安全性都做了考虑.

    php 是世界上最好的语言,没有之一,不接受反驳~
        37
    xrr2016   157 天前 via Android
    PHP 是最好的语音!
        38
    ningfeng   157 天前
    ASP 不服
        39
    chenxytw   157 天前
    我觉得楼主是对的 0 0
    我的判断依据是 CTF 的题型,web 题,代码审计,PHP 的占比很高。
        40
    rockyou12   157 天前
    php 危险,还因为对 php 做攻击的多,我司 nginx 日志里面的攻击基本 90%的 url 都有 index.php 。php 就是这么牛逼
        41
    accm   157 天前
    我是谁,没有绝对安全的系统
        42
    golden0125   157 天前
    这难道不是开发不规范才导致安全隐患吗?按照这个逻辑我可以说水是最危险的东西,因为喝过水的人百分之百都死了
        43
    Huelse   157 天前
    对 php 来说,这是好事。因为没人关注的语言,谁会去挖掘这么多问题
        44
    luanguang   156 天前
    好事呀,说明用 php 的还是很多的,phper 找工作不愁
        45
    icy37785   156 天前 via iPhone
    不同意,下一个
        46
    sama666   156 天前 via Android
    很多 php 萌新不懂得安全,要不然网络安全也不会独立出来了
        47
    killerv   156 天前
    xss 跟 PHP 有毛线关系,甚至说跟后端语言有毛线关系
        48
    imdong   156 天前
    程序员是世界上最危险的语言。
    因为所有的漏洞都是程序员写的。
        49
    liuguang   156 天前
    你这怎么统计到的?这些漏洞,与语言无关,比如 xss 您能保证用其它语言写的就一定没有这个漏洞吗?
        50
    godgc   156 天前
    @KasuganoSoras 应该还要包括一下市面框架暴露出的一些 0day 这种
        51
    azh7138m   156 天前 via Android
    @whoami9894 和语言没关系的,Java 的 ssh 漏洞多的可怕,利用难度极低
        52
    Mrxx   156 天前
    整天钓鱼不用上班么
        53
    lithiumii   156 天前
    相关非因果
        54
    ritaswc   156 天前
    特么的,java 写不好也一样的,天天给 PHP 闲的么
        55
    ritaswc   156 天前
    @imdong 抓到石头
        56
    lookas2001   156 天前
    水深火热,请
        57
    Takamine   156 天前
    我觉得还是人的问题...。
    互联网这个东西,本来就不存在绝对的安全一说:doge:。
        58
    lshero   156 天前 via Android
    说几句不好听的,因为大部分做安全的只会用工具扫描。不会去审计那些二进制文件,甚至连打包了的脚本语言都不会去分析。
    一些安全审核仅仅是根据 php 响应 header 中带的 php 版本来判断安全隐患,连一个可用的 payload 都无法提供。如果说根据 uri 中是否有.php 的扫描判断 php 是否安全,每天都一堆 ssh 的登录失败日志能否得出 openssh 也不安全的结论?
        59
    mamahaha   156 天前
    PHP 已经没啥好喷的了,过去那种一喷 PHP 马上全体围观的盛况早就没了,大家还是好好把精力使用在自己喜欢的语言上去吧。
        60
    vjnjc   156 天前
    从另外个角度,这个说法还是可能的。
    比如把 wordpress 网站考虑为 php 程序网站,而很多 wordpress 站都没有升级到最新版,看起来就符合文章描述了。
        61
    gamexg   156 天前 via Android
    没说 c ?
    溢出攻击大部分都是 c 语言的吧?
        62
    changdy   156 天前
    @azh7138m 这两年早就换成了 spring boot 全家桶了吧.
    这个 貌似没听说到框架级别有什么问题.
        63
    azh7138m   156 天前 via Android
    @changdy ssh 问题多得很
    比如 https://cwiki.apache.org/confluence/display/WW/S2-019
    可以直接当 web shell 用
        64
    x86   156 天前
    贴吧言论都不如
        65
    kongyian   156 天前
    网络应用中 JAVA 被认为是最危险的编程语言,同不同意?

    86% 的 JAVA 应用程序至少包含一个跨站脚本( XSS )漏洞;

    56% 的 JAVA 应用程序至少包含一个 SQL 注入漏洞,著名的也是非常危险且易被利用的 web 应用漏洞之一;

    67% 的 JAVA 应用程序允许目录遍历;

    61% 的 JAVA 应用程序允许代码注入;

    58% 的 JAVA 应用程序在凭证管理方面有问题;

    73% 的 JAVA 应用程序存在加密问题;

    50% 的 JAVA 应用程序允许信息泄露。
        66
    autogen   156 天前
    -





    谢谢大伙赏我的铜板,我手动下沉,别回复了
































































































    -
        67
    ben1024   156 天前
    PHP 不背这个锅,再赏你 10 个
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   3991 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 29ms · UTC 03:59 · PVG 11:59 · LAX 20:59 · JFK 23:59
    ♥ Do have faith in what you're doing.