从开发者视角浅谈供应链安全
软件供应链安全,作为软件生命周期的关键环节,涵盖了开发、板块热点监控源码交付和使用三个阶段,其复杂性要求保护项目自身和所有依赖关系,以及整个生态系统安全。然而,供应链面临十大典型安全问题,如输入验证漏洞、代码注入等,威胁着开发人员和供应商的软件安全。
供应链攻击者通过攻击源代码、硬件等途径,意图操控合法应用,植入恶意软件来操控系统权限。这些攻击者利用网络协议漏洞、服务器安全漏洞和编码问题,进行隐蔽的恶意代码插入。攻击可能通过供应链漏洞(如0day漏洞)、后门、社工攻击或投毒等方式发起。
软件供应链攻击的特点在于其高风险、隐蔽性强,影响范围广泛,且由于信任问题,供应商往往不易察觉恶意代码。攻击可能从供应链上游开始,迅速影响下游环节。安全问题涉及设计、编码、发布和运营等阶段,每个环节都可能成为攻击的入口点。
为了应对这些风险,企业需要采取措施如权限最小化、加强内网管理,制定针对不同场景的防护策略。在开发阶段,需从需求分析开始,强化安全意识,macbook网站源码确保安全需求明确和设计原则符合安全标准。开发测试阶段要进行严格的代码审查,管理开源组件风险,并在发布运营阶段实施安全监控和事件响应。
微软的SDL安全开发生命周期模型提供了一个全面的框架,强调安全意识培训、需求分析、设计和实施中的安全考虑,以及验证和响应的实施。DevSecOps则强调将安全融入整个开发和运营流程,以确保团队的全面参与和责任。
参考以下资源以获取更深入的了解和最佳实践:[redhat.com链接]、[microsoft链接]、[中国软件供应链安全报告]、[freebuf.com链接]以及相关的技术文章和公众号文章。
Discuz!ML 3.x任意代码执行漏洞之大佬分析之后我分析
首先附上米斯特安全大佬们文章的链接,刚开始有些东西我没看的太懂,于是我就再添了点东西,希望像我一样的小白也能看懂。
一、漏洞综述
漏洞类型:代码执行漏洞
影响系统及版本:Discuz!ML V3.2-3.4
漏洞原因:Discuz!ML 系统对cookie中的l接收的language参数内容未过滤,导致字符串拼接,从而执行php代码。
二、漏洞分析
根据米斯特大佬们提供的报错界面,我对其中的三个报错点一一进行了分析,三个报错点如下图所示(还有米斯特大佬们的水印)。
2.1 报错点一分析
发现首先是portal.php函数出错,把这张图放大看,发现是对cookie中的language参数进行拼接而导致的报错,根据这个参数的语义判断应该是调用语言模板的时候因为找不到相应的模板而发生的错误,那么先定位portal.php报错的第行,该文件路径:
紧接着定位libfile函数,文件加载路径函数。
函数介绍:
libfile($libname, $folder = ”),包含2个参数:$libname 和 $folder,该函数读取source目录下的$folder子目录作为基础部分。
libfile函数源代码如下图所示:
DISCUZ_ROOT为定义网站根目录的常量,realpath函数为返回绝对路径函数,到此处第一个报错就已经分析完毕,原因是欢乐猜源码系统因为找不到一个php文件而报的错。
2.2 报错点二分析
还是先根据错误定位到引用函数文件,文件路径source/module/portal/portal_index.php,然后定位到源函数所在的文件,引用的地方好定位,位置在/source/function/function_core.php,直接上图
然后这个函数写的还贼长,哎,没得办法,这个时候只能靠运气了,搏一搏,单车变摩托,首先百度,这个函数的作用也就是个调用模板的函数。
然而这个函数写了行代码,找个大表哥的写的代码注释吧,先扔个参考链接 discuz.net/thread-...
此时我发现了思路有些繁琐,然后就去找第三个错误的提示内容,为了找到是哪里出了问题,我把这段代码放到了txt文件中,根据第三个错误提示的信息开始了全文搜索,终于,根据关键字tpl.php值搜索到一处与language这个函数语义有关的东西DISCUZ_LANG。
既然是语言参数出了问题,还是个常量,那就去找找常量定义的地方,全局搜DISCUZ_LANG,跟踪到/source/class/discuz/discuz_application.php
可以看到,将$lng的值给了DISCUZ_LANG,追踪$lng在何处定义,全局搜索$lng,找到了定义$lng的地方(图中第一个箭头)
到此为止,又出现个var,这是个啥,我只知道var[‘cookie’][‘language’]的意思就是cookie中的language的值。
以上可以分析出,从获取language到DISCUZ_LANG拿到值的过程中,并没有对其进行过滤。
那么现在必须确定报错问题是怎么出现的了,看下图:
出现了这样的代码,直接拼接,然后RCE
拼接单引号和'.phpinfo().'
按理来说可以RCE
总结下大概流程从cookie中获取了language的徒步app源码值,然后给了$lng,接着$lng又给了DISCUZ_LANG,系统通过template函数调用模板文件,template函数执行,执行到$cachefile的时候,执行构造的代码。
三、漏洞复现
访问站点www.***.com/forum.php,刷新页面抓包
*本文作者:xxx,转载请注明来自 FreeBuf.COM在language参数处'.phpinfo().'
返回内容:
复现成功。
看起来复现大佬们的漏洞还是挺有意思的,开心。
白帽子成长进阶指南
欢迎踏上白帽安全专家的成长之路! 首先,让我们定义一下白帽子:他们是网络安全的守护者,专注于发现漏洞却不以恶意为目的,与试图平衡攻防的灰帽,以及非法获取利益的黑帽形成鲜明对比。白帽的成长舞台广阔多样,涵盖了Web、内网、无线和移动等多元领域,为你的职业生涯开辟了无限可能。 职业规划:想在安全领域立足,渗透测试工程师和专家是你值得追求的目标。要在这个领域崭露头角,掌握渗透测试技巧,精通Web安全和代码审计是关键。此外,对源代码审计工具、编程语言、操作系统以及网络协议的深入理解,将是你成功路上的坚实基础。 学习指南:推荐系统性地学习资源——《知道创宇研发技能表V3.1》,这将为你提供清晰的学习路径。在方法论上,明确你的个人安全专长方向,将帮助你更高效地学习和成长。 实践与分享:积极记笔记,通过撰写博客分享你的学习心得,如LoRexxar's Blog和赵树祥的波段龙源码博客,都是获取灵感和提升的宝库。实战经验同样重要,尝试搭建自己的渗透环境,如Linux的LAMP或Windows的WAMP,参与bugku实验吧或企业SRC平台,让你的技能在实践中得以磨砺。 学习资源汇总:不要忽视乌云文章备份、CSDN、博客园和GitHub等平台,它们是海量知识的宝库。FreeBuf、Seebug等社区更是实战经验的汇集地。如果你想通过视频学习,安全师、哔哩哔哩和YouTube上有许多深入浅出的教程。书籍方面,《白帽子系列》和《OWASP测试指南》覆盖了从入门到高级的全阶段内容,是你的学习伙伴。 最后,网络安全领域的知识不断更新,记住,作者的能力有限,如果你发现任何遗漏或错误,欢迎随时纠正,让我们一起推动安全知识的进步!记某次攻防演练:大战UEditor并突破
参与某次攻防演练,目标单位存在公开的域名备案信息。通过FOFA搜索,发现该单位存在端口的开放子域名,启动渗透流程。目录扫描后,发现/bin.rar路径可以访问到一个压缩文件,下载解压缩后,初步判断为.NET形式的站点源代码,使用C#语言编写。进一步分析dll文件的命名规则和.NET格式,判断出主要的后端逻辑代码位于xxx.Application.Web.dll文件中。为了解读二进制dll文件,使用dnspy进行反编译。为帮助网安学习者,提供一套免费资料包,包括网安学习路径思维导图、工具包、SRC分析报告、攻防实战技术电子书、CISSP认证资料、CTF实战技巧、大厂面试题集、客户端安全检测指南等。
源码中发现使用UEditor。UEditor的路径为/Utility/UEditor/controller.ashx。尝试访问关键接口,发现返回错误,可能由于WAF或EDR拦截。通过Fuzz方法,发现通过访问/Utility/UEditor/.css?action=catchimage可以绕过拦截,成功访问关键接口。利用UEditor .net版本的任意文件上传漏洞,上传哥斯拉jsp webshell。漏洞利用参考链接:freebuf.com/vuls/...。在上传过程中遇到杀软拦截,使用github.com/Tas9er/ByPas...项目对webshell进行免杀处理,最终成功上传并连接,完成UEditor站点的利用。接下来,通过愉快地打内网进行后续操作。
传统的UEditor利用方式通常需要本地编写HTML文件,包含表单以提交马地址至目标服务器。不过,原理基于HTTP请求发送马地址,因此可以直接在Burp Suite中发送请求达到相同效果,省去制作HTML文件的步骤。请求发送后,服务器返回webshell路径。总结,攻防演练过程中,通过信息收集、渗透测试、代码分析、利用漏洞等步骤,成功完成目标系统的利用,展示了攻防技术的实战应用。
Python攻防之弱口令、自定义字典生成及网站防护
本文聚焦于Python在网络安全领域的应用,特别是自定义字典生成以及网站防护策略。首先,介绍暴力破解法,这是一种直接针对密码的攻击手段,虽然破解任何密码是时间问题,但密码的复杂度会延长破解时间。Web账号和常见口令如"admin"、"test"等,由于易记性而常被使用,但这也使得账号和口令容易受到暴力破解攻击。密码的生成往往基于常见密码和特定规则,如网站域名"demo.study.com"的可能密码组合。
数据库的非法获取能为攻击者提供网站管理账号、用户隐私信息甚至服务器最高权限。通过搜索引擎和特定工具,如Google、百度以及网络安全工具如wwwscan、御剑等,可以找到网站后台入口关键字,例如"admin.asp"、"manage.asp"等。在Google搜索时,可以使用如"intitle:后台管理"的语法进行关键词搜索。
弱口令被定义为容易猜测或被破解工具破解的口令。这类口令通常只包含简单数字和字母,风险较高。"freebuf"网站的最弱密码排行榜提供了一个示例,推荐读者学习弱口令的危害与防范方法。
使用Python的exrex库可以轻松生成密码。exrex是一个命令行工具和Python模块,支持生成与给定正则表达式匹配的所有或随机字符串。用户只需通过pip安装exrex,然后使用exrex.generate函数即可生成密码。
高精度字典生成是利用特定规则组合生成密码,比如以网站域名"demo.eastmount.com/"为基准,结合常见的密码词典进行组合。生成的字典可以进一步扩展,通过创建规则文件(如rule.ini),定义生成密码的规则,如使用特定字典、特殊字符、年份等。
实现网站暴力登录,例如使用Selenium自动化爬虫库模拟登录。构建包含用户名和密码输入的HTML源代码,通过自动化代码遍历常见密码组合,实现登录尝试。此过程需要考虑网站的异常处理,如错误提示"login_error"。
在网络安全实践中,了解密码生成和破解的原理对于保护系统至关重要。构建复杂且多样化的密码策略,结合自动化工具,可以显著提升系统的防护能力。对于网站开发者和管理员而言,理解弱口令的危害并采取措施保护用户数据安全是其职责所在。在日常维护中,定期更新密码策略、加强用户教育、使用双因素认证等方法,可以有效防范弱口令带来的风险。
CTF入门学习籽料(非常详细)零基础入门到精通,收藏这一篇就够了!(文末自取)
从年月起,我开始接触CTF,专注于学习SQL注入、文件包含等Web安全知识。初期,虽然掌握了知识点,但并未能将其应用实践。通过刷题,我逐渐领悟了知识点的应用场景和漏洞利用的技巧,但在挖掘源代码(src)漏洞方面仍感迷茫,学习一年后,尚无从下手的经验。为帮助有志于CTF领域学习的朋友,我整理了一系列学习籽料,旨在详细记录自己的学习过程,以供参考。 CTF,中文译为夺旗赛或签到赛,在网络安全领域中,是指技术人员之间进行技术竞技的一种比赛形式。CTF竞赛通常包括多个部分,涵盖各种技术挑战,如Web、逆向、密码学等。了解不同竞赛网站的特性和题目类型,对于初学者而言至关重要。以下是一些推荐的CTF竞赛平台: buuctf buuoj.cn/ 该平台题库全面,难度梯度合理,常举办自办比赛,适合不同水平的选手。 攻防世界 adworld.xctf.org.cn/ 以含金量高的x ctf比赛著称,题目排序可能略显混乱,适合中高水平选手,题目质量上乘。 CTFshow ctf.show/ 适合初学者,部分教程免费,相较于前两个平台,体量较小。 nssctf nssctf.cn/ 专注于Web安全,风格类似洛谷,频率高,界面美观。 除了参与竞赛,还需要关注学习和资源网站,以便获取更全面的知识和技术更新。以下推荐网站对学习者颇具价值: CTF维基 ctf-wiki.org/ 提供所有方向的详细介绍,适合文字学习者,高难度内容可能缺失。 CTFtime ctftime.org/ 汇集全球战队成绩信息,便于查找知名比赛,参考世界排名。 pojie 破解 提供破解工具和比赛相关信息,相当于CTF社区的论坛。 freebuf 首次接触的平台,包含最新热点和技术贴。 先知社区 xz.aliyun.com/ 分享新生赛总结,包含校赛等周期较长、难度适中的比赛。 对于黑客与网络安全的学习,需要明确学习路线图。该路线图涵盖了攻击和防御领域所需的知识点,包括网络安全法学习、网络安全运营、渗透测试基础、漏洞详解、计算机基础知识等。配套的视频教程详细讲解了路线图中的每一个知识点,共计多集,内容丰富,涵盖了网络安全入门的必知必会学习内容。此外,还提供了一系列技术文档和电子书,包含个人参与大型网安行动、CTF比赛和挖掘SRC漏洞的经验和技术要点,以及多本电子书。面试题集锦,尤其适用于寻找网络安全工作机会的求职者,包含深信服、奇安信、腾讯等大厂面试中常见的问题。 综上所述,通过上述资源的学习和实践,初学者可以在CTF领域快速成长,不仅提升技术能力,还能为未来的职业道路奠定坚实基础。欢迎各位朋友积极参与,共同探索网络安全的奥秘。webå®å ¨è¦å¦ä»ä¹
å¦ä¹ Webå®å ¨éè¦ææ¡Webå®å ¨ç¸å ³æ¦å¿µãæ¸éæµè¯ç¸å ³å·¥å ·ãæ¸éå®ææä½ãçæWindows/Kali Linuxãä¸é´ä»¶åæå¡å¨çå®å ¨é ç½®ãèæ¬ç¼ç¨å¦ä¹ ãæºç 审计ä¸æ¼æ´åæãå®å ¨ä½ç³»è®¾è®¡ä¸å¼åççãç®ååä¸ä¸ªå¦ä¹ è§åï¼
第ä¸æ¥ï¼Webå®å ¨ç¸å ³æ¦å¿µ
建议å¦ä¹ æ¶é´ï¼2å¨
å¦ä¹ å 容å¦ä¸ï¼
1ãçæåºæ¬æ¦å¿µ(SQLæ³¨å ¥ãä¸ä¼ ãXSSãCSRFãä¸å¥è¯æ¨é©¬ç)ã
2ãéè¿å ³é®å(SQLæ³¨å ¥ãä¸ä¼ ãXSSãCSRFãä¸å¥è¯æ¨é©¬ç)è¿è¡Googleã
3ãé 读ãWebå®å ¨æ·±åº¦åæãï¼ä½ä¸ºå ¥é¨å¦ä¹ è¿æ¯å¯ä»¥çã
4ãçä¸äºæ¸éç¬è®°/è§é¢ï¼äºè§£æ¸éå®æçæ´ä¸ªè¿ç¨ï¼å¯ä»¥Google(æ¸éç¬è®°ãæ¸éè¿ç¨ãå ¥ä¾µè¿ç¨ç)ã
第äºæ¥ï¼çææ¸éç¸å ³å·¥å ·
建议å¦ä¹ æ¶é´ï¼3å¨
å¦ä¹ å 容å¦ä¸ï¼
1ãçæAWVSãSqlmapãBurpsuiteãNessusãChina chopper ãNmapãAppscançç¸å ³å·¥å ·ç使ç¨ã
2ãäºè§£è¯¥ç±»å·¥å ·çç¨éå使ç¨åºæ¯ã
3ãä¸è½½æ åé¨ççè¿äºè½¯ä»¶è¿è¡å®è£ ã
4ãå¦ä¹ 并è¿è¡ä½¿ç¨ï¼å ·ä½ææå¯ä»¥å¨ç½ä¸æç´¢ï¼ä¾å¦ï¼Burpsuiteçæç¨ãSqlmapã
5ã常ç¨çè¿å 个软件é½å¦ä¼åï¼å¯ä»¥å®è£ é³éå¯å¨åä¸ä¸ªæ¸éå·¥å ·ç®±
第ä¸æ¥ï¼æ¸éå®ææä½
建议å¦ä¹ æ¶é´ï¼5å¨
å¦ä¹ å 容å¦ä¸ï¼
1ãææ¡æ¸éçæ´ä¸ªé¶æ®µå¹¶è½å¤ç¬ç«æ¸éå°åç«ç¹ã
2ãç½ä¸æ¾æ¸éè§é¢ç并æèå ¶ä¸çæè·¯ååçï¼å ³é®å(æ¸éãSQLæ³¨å ¥è§é¢ãæ件ä¸ä¼ å ¥ä¾µãæ°æ®åºå¤ä»½ãDedecmsæ¼æ´å©ç¨çç)ã
3ãèªå·±æ¾ç«ç¹/æ建æµè¯ç¯å¢è¿è¡æµè¯ï¼è®°ä½è¯·éèå¥½ä½ èªå·±ã
4ãæèæ¸é主è¦å为å 个é¶æ®µï¼æ¯ä¸ªé¶æ®µéè¦ååªäºå·¥ä½ï¼ä¾å¦è¿ä¸ªï¼PTESæ¸éæµè¯æ§è¡æ åã
5ãç 究SQLæ³¨å ¥çç§ç±»ãæ³¨å ¥åçãæå¨æ³¨å ¥æå·§ã
6ãç 究æ件ä¸ä¼ çåçï¼å¦ä½è¿è¡æªæã解ææ¼æ´å©ç¨çï¼åç §ï¼ä¸ä¼ æ»å»æ¡æ¶ã
7ãç 究XSSå½¢æçåçåç§ç±»ï¼å ·ä½å¦ä¹ æ¹æ³å¯ä»¥Googleã
8ãç 究Windows/Linuxææçæ¹æ³åå ·ä½ä½¿ç¨ï¼å¯ä»¥åèï¼ææã
9ãå¯ä»¥åè: å¼æºæ¸éæµè¯è弱系ç»ã
第åæ¥ï¼å ³æ³¨å®å ¨åå¨æ
建议å¦ä¹ æ¶é´ï¼1å¨
å¦ä¹ å 容å¦ä¸ï¼
1ãå ³æ³¨å®å ¨åçææ°æ¼æ´ãå®å ¨äºä»¶ä¸ææ¯æç« ã
2ãæµè§æ¯æ¥çå®å ¨ææ¯æç« /äºä»¶ã
3ãéè¿å¾®åãå¾®ä¿¡å ³æ³¨å®å ¨åçä»ä¸äººå(éå°å¤§ççå ³æ³¨æè 好åææå ³æ³¨)ï¼å¤©å¤©æ½æ¶é´å·ä¸ä¸ã
4ãéè¿feedly/é²æ订é å½å å¤å®å ¨ææ¯å客(ä¸è¦ä» éäºå½å ï¼å¹³æ¶å¤æ³¨æ积累)ã
5ãå »æä¹ æ¯ï¼æ¯å¤©ä¸»å¨æ交å®å ¨ææ¯æç« é¾æ¥å°iæ¥ç§ç¤¾åºè¿è¡ç§¯æ·ã
6ãå¤å ³æ³¨ä¸ææ°æ¼æ´å表ï¼å¯ä»¥ççhackeroneãfreebufãå®å ¨å®¢çï¼éå°å ¬å¼çæ¼æ´é½å»å®è·µä¸ã
7ãå ³æ³¨å½å å½é ä¸çå®å ¨ä¼è®®çè®®é¢æè å½åã
8ãå å ¥ææ¯äº¤æµç¾¤ï¼ä¸ç¾¤å 大佬们讨æä¸äºç»éªåæå·§ã
第äºæ¥ï¼çæWindows/Kali Linux
建议å¦ä¹ æ¶é´ï¼3å¨
å¦ä¹ å 容å¦ä¸ï¼
1ãå¦ä¹ Windows/Kali Linuxåºæ¬å½ä»¤ã常ç¨å·¥å ·ã
2ãçæWindowsä¸ç常ç¨çcmdå½ä»¤ï¼ä¾å¦ï¼ipconfig,nslookup,tracert,net,tasklist,taskkillçã
3ãçæLinuxä¸ç常ç¨å½ä»¤ï¼ä¾å¦ï¼ifconfig,ls,cp,mv,vi,wget,service,sudoçã
4ãçæKali Linuxç³»ç»ä¸ç常ç¨å·¥å ·ï¼å¯ä»¥åèãWeb Penetration Testing with Kali LinuxãããHacking with Kaliãçã
5ãçæmetasploitå·¥å ·ï¼å¯ä»¥åèãMetasploitæ¸éæµè¯æåãã
第å æ¥ï¼ä¸é´ä»¶åæå¡å¨çå®å ¨é ç½®
建议å¦ä¹ æ¶é´ï¼3å¨
å¦ä¹ å 容å¦ä¸ï¼
1ãå¦ä¹ æå¡å¨ç¯å¢é ç½®ï¼å¹¶è½éè¿æèåç°é ç½®åå¨çå®å ¨é®é¢ã
2ãWindows serverç¯å¢ä¸çIISé ç½®ï¼ç¹å«æ³¨æé ç½®å®å ¨åè¿è¡æéã
3ãLinuxç¯å¢ä¸çLAMPçå®å ¨é ç½®ï¼ä¸»è¦èèè¿è¡æéãè·¨ç®å½ãæ件夹æéçã
4ãè¿ç¨ç³»ç»å åºï¼éå¶ç¨æ·ååå£ä»¤ç»éï¼éè¿iptableséå¶ç«¯å£ï¼é 置软件Wafå 强系ç»å®å ¨ï¼å¨æå¡å¨é ç½®mod_securityçç³»ç»ã
5ãéè¿Nessus软件对é ç½®ç¯å¢è¿è¡å®å ¨æ£æµï¼åç°æªç¥å®å ¨å¨èã
第ä¸æ¥ï¼èæ¬ç¼ç¨å¦ä¹
建议å¦ä¹ æ¶é´ï¼4å¨
å¦ä¹ å 容å¦ä¸ï¼
1ãéæ©èæ¬è¯è¨ï¼Perl/Python/PHP/Go/Javaä¸çä¸ç§ï¼å¯¹å¸¸ç¨åºè¿è¡ç¼ç¨å¦ä¹ ã
2ãæ建å¼åç¯å¢åéæ©IDEï¼PHPç¯å¢æ¨èWampåXAMPPï¼IDE强çæ¨èSublimeã
3ãPythonç¼ç¨å¦ä¹ ï¼å¦ä¹ å 容å å«ï¼è¯æ³ãæ£åãæ件ãç½ç»ãå¤çº¿ç¨ç常ç¨åºï¼æ¨èãPythonæ ¸å¿ç¼ç¨ãã
4ãç¨Pythonç¼åæ¼æ´çexpï¼ç¶ååä¸ä¸ªç®åçç½ç»ç¬è«ã
5ãPHPåºæ¬è¯æ³å¦ä¹ 并书åä¸ä¸ªç®åçå客系ç»ï¼åè§ãPHPä¸MySQLç¨åºè®¾è®¡(第4ç)ããè§é¢ã
6ãçæMVCæ¶æï¼å¹¶è¯çå¦ä¹ ä¸ä¸ªPHPæ¡æ¶æè Pythonæ¡æ¶(å¯é)ã
7ãäºè§£Bootstrapçå¸å±æè CSSã
ç¬¬å «æ¥ï¼æºç 审计ä¸æ¼æ´åæ
建议å¦ä¹ æ¶é´ï¼3å¨
å¦ä¹ å 容å¦ä¸ï¼
1ãè½ç¬ç«åæèæ¬æºç ç¨åºå¹¶åç°å®å ¨é®é¢ã
2ãçææºç 审计çå¨æåéææ¹æ³ï¼å¹¶ç¥éå¦ä½å»åæç¨åºã
3ãäºè§£Webæ¼æ´çå½¢æåå ï¼ç¶åéè¿å ³é®åè¿è¡æ¥æ¾åæã
4ãç 究Webæ¼æ´å½¢æåçåå¦ä½ä»æºç å±é¢é¿å 该类æ¼æ´ï¼å¹¶æ´çæchecklistã
å¦ä¹ å°åï¼iæ¥ç§å®ç½ï¼ä¼å®æ®¿ï¼
第ä¹æ¥ï¼å®å ¨ä½ç³»è®¾è®¡ä¸å¼å
建议å¦ä¹ æ¶é´ï¼5å¨
å¦ä¹ å 容å¦ä¸ï¼
1ãè½å»ºç«èªå·±çå®å ¨ä½ç³»ï¼å¹¶è½æåºä¸äºå®å ¨å»ºè®®æè ç³»ç»æ¶æã
2ãå¼åä¸äºå®ç¨çå®å ¨å°å·¥å ·å¹¶å¼æºï¼ä½ç°ä¸ªäººå®åã
3ã建ç«èªå·±çå®å ¨ä½ç³»ï¼å¯¹å ¬å¸å®å ¨æèªå·±çä¸äºè®¤è¯åè§è§£ã
4ãæåºæè å å ¥å¤§åå®å ¨ç³»ç»çæ¶ææè å¼åã
2024-11-19 09:26
2024-11-19 08:57
2024-11-19 08:38
2024-11-19 07:36
2024-11-19 07:18