前端应用后期维护问题!

2023 年 2 月 13 日
 acbot

一个在线的运行项目由于漏洞等原因想升级一下基础框架版本,由于手上只有打包发布后的文件,这种文件代码的 JS 可读性很差,加之自己对前端也不是很熟悉,一些问题请教一下各位前端大佬:

  1. 如何知道该 app.js 使用了的什么基础框架,或者说能反编译这个文件吗
  2. 如果该框架版本有漏洞,或者是该框架应用的第三方 JS 库有漏洞,如何在只有 app.js 的情况下能简单的升级版本(比如:像 HTML 代码种修改一下版本)
3512 次点击
所在节点    前端开发
36 条回复
Tdy95
2023 年 2 月 13 日
曾经修改过几个编译后的 SDK 文件,靠着断点,执行栈信息,修改了功能。但是也仅限于一些局部功能点逻辑了。大改的成本是无法接受的。
shakaraka
2023 年 2 月 13 日
梦里啥都有
acbot
2023 年 2 月 13 日
@fzls 我的认知也就是停留在那个时候, 所以才有这个问题! :-)
acbot
2023 年 2 月 13 日
@zenxds 之前我的思路也就是这样,并且已经找到相应的关键字了。只是我觉得可能不一定是所以问问
acbot
2023 年 2 月 13 日
@westoy 需求提上来之后我就是这样回复的 但是难免有完美主义的人要试试, 没办法!
acbot
2023 年 2 月 13 日
@loading 不是, 背景在#3 我已经详细说了!
chjieza
2023 年 2 月 13 日
成本很高。看漏洞是什么类型如果是可以全局监听并处理的话,写一个外链 JS ,在 index.html 插入进去,作为一个保底的方案。但是直接复原源码或者修改源码就别想了。有这功夫能重新写一个了。
acbot
2023 年 2 月 13 日
@chjieza 这个方法值得参考!
icebay
2023 年 2 月 13 日
找找看有没有 map 文件?早期部分网站都有保留,有的话可以直接看到源代码

至于框架,用 Wappalyzer 浏览器扩展试试
TomVista
2023 年 2 月 13 日
看看项目下 有没有 sourcemap
leaveeel
2023 年 2 月 13 日
1. 看资源加载的是 el 还是 ant ,el 大概率是 vue ,ant 大概率是 react
2. 如果是 cdn 引用的可以改 html 里的版本号升级,不保内容证兼容性
BUHeF254Lpd1MH06
2023 年 2 月 13 日
为什么没有源码呢,难道是你在网上扒的别人的吗
Al0rid4l
2023 年 2 月 13 日
不是不能改, 但非常恶心需要很大毅力以及很多时间
折中的可能是, 如果运气够好, 需要升级的部分模块化比较好被依赖比较少无副作用且没有什么 breaking change 的话, 找到几个被依赖的位置把它替换掉, 其他部分就可以不用管了
acbot
2023 年 2 月 13 日
@IceBay
@TomVista 好的 我试试!
acbot
2023 年 2 月 13 日
@v135ex 不是, 背景在#3 我已经详细说了!
IvanLi127
2023 年 2 月 13 日
没源码就不要想了。
人家公司倒闭导致没人维护,你们公司也有责任,而且说实话,你们也不一定有资格去改人家的代码,所以重写吧。。。。
升级基础框架版本,升上去了其他代码可能也需要调整的。。。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://v2ex.ih06.com/t/915552

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX