@umacloud/knowledge 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (418) hide show
  1. package/00-governance/governance-capabilities.md +557 -0
  2. package/00-governance/knowledge-map.md +39 -0
  3. package/00-governance/maintenance-policy.md +76 -0
  4. package/00-governance/review-checklist.md +81 -0
  5. package/README.md +13 -0
  6. package/ai/01-standards/agent-development-complete.md +691 -0
  7. package/ai/01-standards/llm-application-complete.md +488 -0
  8. package/ai/01-standards/mlops-complete.md +798 -0
  9. package/ai/01-standards/prompt-engineering-complete.md +646 -0
  10. package/ai/01-standards/rag-architecture-complete.md +649 -0
  11. package/ai/02-playbooks/llm-evaluation-playbook.md +847 -0
  12. package/ai/03-checklists/ai-project-checklist.md +215 -0
  13. package/ai/04-antipatterns/ai-antipatterns.md +661 -0
  14. package/ai/05-cases/case-rag-production.md +147 -0
  15. package/ai/06-glossary/ai-glossary.md +162 -0
  16. package/ai/agent-evaluation-benchmark.md +53 -0
  17. package/ai/ai-agent-memory-context-management.md +41 -0
  18. package/ai/ai-cost-capacity-optimization-playbook.md +42 -0
  19. package/ai/ai-data-security-and-compliance-playbook.md +37 -0
  20. package/ai/ai-domain-index-and-checklist.md +40 -0
  21. package/ai/ai-governance-maturity-model.md +50 -0
  22. package/ai/ai-model-selection-and-routing-strategy.md +47 -0
  23. package/ai/ai-observability-and-oncall-runbook.md +52 -0
  24. package/ai/ai-rag-engineering-playbook.md +42 -0
  25. package/ai/ai-red-team-and-safety-evaluation.md +42 -0
  26. package/ai/ai-release-readiness-and-rollback-gate.md +42 -0
  27. package/ai/llm-agent-engineering-deep-dive.md +57 -0
  28. package/ai/prompt-and-tool-guardrails.md +52 -0
  29. package/api/01-standards/enterprise-api-standards.md +198 -0
  30. package/api/01-standards/rest-api-design-guide.md +63 -0
  31. package/api/02-playbooks/api-pagination-playbook.md +93 -0
  32. package/api/02-playbooks/graphql-production-playbook.md +176 -0
  33. package/api/03-checklists/api-review-checklist.md +55 -0
  34. package/api/04-antipatterns/api-antipatterns.md +112 -0
  35. package/architecture/01-standards/api-gateway-patterns.md +496 -0
  36. package/architecture/01-standards/cloud-native-patterns.md +644 -0
  37. package/architecture/01-standards/distributed-systems-patterns.md +591 -0
  38. package/architecture/01-standards/event-driven-architecture.md +595 -0
  39. package/architecture/01-standards/microservices-patterns-complete.md +968 -0
  40. package/architecture/01-standards/microservices-patterns.md +495 -0
  41. package/architecture/01-standards/system-design-interview.md +664 -0
  42. package/architecture/02-playbooks/microservices-patterns-playbook.md +137 -0
  43. package/architecture/02-playbooks/migration-playbook.md +780 -0
  44. package/architecture/02-playbooks/system-design-playbook.md +779 -0
  45. package/architecture/03-checklists/architecture-decision-checklist.md +297 -0
  46. package/architecture/04-antipatterns/architecture-antipatterns.md +417 -0
  47. package/architecture/05-cases/case-netflix-microservices.md +413 -0
  48. package/architecture/06-glossary/architecture-glossary.md +164 -0
  49. package/architecture/adr-template-and-examples.md +38 -0
  50. package/architecture/api-gateway-deep-dive.md +1291 -0
  51. package/architecture/configuration-management.md +1162 -0
  52. package/architecture/distributed-transactions.md +1220 -0
  53. package/architecture/microservices-complete.md +735 -0
  54. package/architecture/resilience-and-disaster-patterns.md +37 -0
  55. package/architecture/service-governance.md +1198 -0
  56. package/architecture/system-architecture-deep-dive.md +37 -0
  57. package/backend/01-standards/analytics-and-growth.md +65 -0
  58. package/backend/01-standards/api-and-error-conventions.md +120 -0
  59. package/backend/01-standards/application-layering-and-packaging.md +160 -0
  60. package/backend/01-standards/auth-implementation.md +104 -0
  61. package/backend/01-standards/backend-framework-idioms.md +74 -0
  62. package/backend/01-standards/background-jobs-and-async.md +66 -0
  63. package/backend/01-standards/caching-strategies-complete.md +390 -0
  64. package/backend/01-standards/config-and-observability.md +77 -0
  65. package/backend/01-standards/data-modeling-and-persistence.md +94 -0
  66. package/backend/01-standards/django-complete.md +1765 -0
  67. package/backend/01-standards/email-and-notifications.md +64 -0
  68. package/backend/01-standards/fastapi-complete.md +925 -0
  69. package/backend/01-standards/file-upload-and-storage.md +66 -0
  70. package/backend/01-standards/graphql-api-complete.md +416 -0
  71. package/backend/01-standards/llm-application-standard.md +78 -0
  72. package/backend/01-standards/message-queue-patterns.md +379 -0
  73. package/backend/01-standards/microservices-and-distributed.md +78 -0
  74. package/backend/01-standards/nestjs-complete.md +2167 -0
  75. package/backend/01-standards/payment-integration.md +80 -0
  76. package/backend/01-standards/rate-limiting-complete.md +451 -0
  77. package/backend/01-standards/realtime-and-websocket.md +65 -0
  78. package/backend/01-standards/search-and-filtering.md +64 -0
  79. package/backend/01-standards/spring-boot-complete.md +445 -0
  80. package/backend/02-playbooks/api-design-playbook.md +718 -0
  81. package/backend/02-playbooks/email-send-playbook.md +130 -0
  82. package/backend/02-playbooks/file-upload-s3-playbook.md +153 -0
  83. package/backend/02-playbooks/typescript-enterprise-playbook.md +133 -0
  84. package/backend/02-playbooks/websocket-realtime-playbook.md +154 -0
  85. package/backend/03-checklists/api-launch-checklist.md +189 -0
  86. package/backend/04-antipatterns/backend-antipatterns.md +1051 -0
  87. package/blockchain/01-standards/blockchain-basics.md +557 -0
  88. package/blockchain/01-standards/smart-contract-development.md +1315 -0
  89. package/cicd/01-standards/deployment-and-delivery-standard.md +96 -0
  90. package/cicd/01-standards/github-actions-complete.md +473 -0
  91. package/cicd/01-standards/release-and-store-submission.md +75 -0
  92. package/cicd/02-playbooks/cicd-pipeline-playbook.md +144 -0
  93. package/cicd/02-playbooks/release-management-playbook.md +605 -0
  94. package/cicd/03-checklists/pipeline-security-checklist.md +168 -0
  95. package/cicd/04-antipatterns/cicd-antipatterns.md +589 -0
  96. package/cicd/05-cases/case-deployment-automation.md +221 -0
  97. package/cicd/05-cases/case-gitops-transformation.md +212 -0
  98. package/cicd/06-glossary/cicd-glossary.md +114 -0
  99. package/cicd/cicd-blueprint-deep-dive.md +38 -0
  100. package/cicd/release-readiness-gate.md +37 -0
  101. package/cloud-native/01-standards/container-security.md +741 -0
  102. package/cloud-native/01-standards/kubernetes-complete.md +812 -0
  103. package/cloud-native/02-playbooks/api-gateway-playbook.md +155 -0
  104. package/cloud-native/02-playbooks/gitops-with-argocd.md +760 -0
  105. package/cloud-native/02-playbooks/k8s-troubleshooting-playbook.md +1942 -0
  106. package/cloud-native/02-playbooks/message-queue-playbook.md +129 -0
  107. package/cloud-native/02-playbooks/multicloud-governance.md +726 -0
  108. package/cloud-native/02-playbooks/serverless-patterns.md +788 -0
  109. package/cloud-native/02-playbooks/service-mesh-playbook.md +612 -0
  110. package/cloud-native/02-playbooks/terraform-iac-playbook.md +143 -0
  111. package/cloud-native/03-checklists/container-security-checklist.md +431 -0
  112. package/cloud-native/03-checklists/k8s-production-readiness-checklist.md +460 -0
  113. package/cloud-native/04-antipatterns/container-antipatterns.md +660 -0
  114. package/cloud-native/04-antipatterns/k8s-antipatterns.md +743 -0
  115. package/cloud-native/05-cases/case-k8s-migration.md +478 -0
  116. package/cloud-native/05-cases/case-k8s-scaling.md +642 -0
  117. package/cloud-native/05-cases/case-k8s-security-incident.md +397 -0
  118. package/cloud-native/06-glossary/cloud-native-glossary.md +337 -0
  119. package/cross-platform/01-standards/cross-platform-frameworks.md +83 -0
  120. package/cross-platform/01-standards/platform-selection-and-architecture.md +77 -0
  121. package/data/01-standards/elasticsearch-complete.md +2098 -0
  122. package/data/01-standards/postgresql-complete.md +1613 -0
  123. package/data/01-standards/redis-complete.md +1527 -0
  124. package/data/02-playbooks/database-optimization-playbook.md +403 -0
  125. package/data/02-playbooks/elasticsearch-production-playbook.md +132 -0
  126. package/data/03-checklists/database-launch-checklist.md +187 -0
  127. package/data/04-antipatterns/database-antipatterns.md +873 -0
  128. package/data/05-cases/case-database-migration.md +310 -0
  129. package/data/06-glossary/database-glossary.md +440 -0
  130. package/data/data-governance-and-modeling-deep-dive.md +39 -0
  131. package/data-engineering/01-standards/airflow-complete.md +523 -0
  132. package/data-engineering/01-standards/kafka-complete.md +1521 -0
  133. package/data-engineering/02-playbooks/spark-etl-playbook.md +496 -0
  134. package/data-engineering/03-checklists/pipeline-launch-checklist.md +194 -0
  135. package/data-engineering/04-antipatterns/data-pipeline-antipatterns.md +684 -0
  136. package/data-engineering/05-cases/case-real-time-pipeline.md +355 -0
  137. package/data-engineering/06-glossary/data-engineering-glossary.md +429 -0
  138. package/database/01-standards/database-schema-standards.md +147 -0
  139. package/database/02-playbooks/postgresql-optimization-quick.md +52 -0
  140. package/database/02-playbooks/postgresql-performance-optimization.md +58 -0
  141. package/database/02-playbooks/postgresql-production-playbook.md +146 -0
  142. package/database/02-playbooks/redis-caching-playbook.md +117 -0
  143. package/database/03-checklists/database-review-checklist.md +50 -0
  144. package/database/04-antipatterns/database-antipatterns.md +112 -0
  145. package/design/01-standards/ui-design-system-complete.md +423 -0
  146. package/design/02-playbooks/design-handoff-playbook.md +254 -0
  147. package/design/02-playbooks/design-review-playbook.md +388 -0
  148. package/design/03-checklists/design-review-checklist.md +246 -0
  149. package/design/04-antipatterns/design-antipatterns.md +378 -0
  150. package/design/05-cases/case-design-system-adoption.md +328 -0
  151. package/design/06-glossary/design-glossary.md +329 -0
  152. package/design/ui-full-lifecycle-cross-platform-playbook.md +571 -0
  153. package/design/ux-system-deep-dive.md +38 -0
  154. package/design-systems/00-craft-rules.md +71 -0
  155. package/design-systems/aesthetic-families.md +43 -0
  156. package/design-systems/anti-ai-slop.md +162 -0
  157. package/design-systems/bold-geometric.md +120 -0
  158. package/design-systems/brutalist-bold.md +103 -0
  159. package/design-systems/editorial-clean.md +109 -0
  160. package/design-systems/glass-aurora.md +108 -0
  161. package/design-systems/modern-minimal.md +145 -0
  162. package/design-systems/premium-luxury.md +106 -0
  163. package/design-systems/product-type-design-map.md +48 -0
  164. package/design-systems/soft-warm.md +123 -0
  165. package/design-systems/tech-utility.md +113 -0
  166. package/desktop/01-standards/desktop-app-standard.md +72 -0
  167. package/desktop/01-standards/desktop-design.md +71 -0
  168. package/development/00-governance/document-template.md +41 -0
  169. package/development/01-standards/api-versioning-strategies.md +432 -0
  170. package/development/01-standards/authentication-patterns-complete.md +479 -0
  171. package/development/01-standards/css-architecture-complete.md +550 -0
  172. package/development/01-standards/database-migration-strategies.md +484 -0
  173. package/development/01-standards/elasticsearch-complete.md +347 -0
  174. package/development/01-standards/git-complete.md +371 -0
  175. package/development/01-standards/golang-complete.md +1565 -0
  176. package/development/01-standards/graphql-complete.md +298 -0
  177. package/development/01-standards/javascript-bundlers-complete.md +469 -0
  178. package/development/01-standards/javascript-typescript-complete.md +528 -0
  179. package/development/01-standards/jest-complete.md +275 -0
  180. package/development/01-standards/linux-complete.md +234 -0
  181. package/development/01-standards/logging-observability-complete.md +526 -0
  182. package/development/01-standards/microservices-communication.md +502 -0
  183. package/development/01-standards/mongodb-complete.md +406 -0
  184. package/development/01-standards/oauth2-complete.md +285 -0
  185. package/development/01-standards/performance-optimization-complete.md +289 -0
  186. package/development/01-standards/playwright-complete.md +247 -0
  187. package/development/01-standards/postgresql-complete.md +456 -0
  188. package/development/01-standards/pytest-complete.md +340 -0
  189. package/development/01-standards/python-async-programming.md +902 -0
  190. package/development/01-standards/python-complete.md +956 -0
  191. package/development/01-standards/python-decorators-complete.md +799 -0
  192. package/development/01-standards/python-design-patterns.md +2854 -0
  193. package/development/01-standards/python-packaging-distribution.md +420 -0
  194. package/development/01-standards/python-testing-strategies.md +607 -0
  195. package/development/01-standards/python-web-frameworks-comparison.md +471 -0
  196. package/development/01-standards/redis-complete.md +317 -0
  197. package/development/01-standards/rest-api-complete.md +316 -0
  198. package/development/01-standards/rust-complete.md +578 -0
  199. package/development/01-standards/typescript-advanced-types.md +1513 -0
  200. package/development/01-standards/web-security-complete.md +292 -0
  201. package/development/02-playbooks/api-design-playbook.md +810 -0
  202. package/development/02-playbooks/database-migration-playbook.md +580 -0
  203. package/development/02-playbooks/debugging-playbook.md +692 -0
  204. package/development/02-playbooks/feature-delivery-playbook.md +430 -0
  205. package/development/02-playbooks/incident-hotfix-playbook.md +387 -0
  206. package/development/02-playbooks/performance-optimization-playbook.md +531 -0
  207. package/development/02-playbooks/performance-tuning-playbook.md +652 -0
  208. package/development/02-playbooks/refactor-playbook.md +403 -0
  209. package/development/02-playbooks/release-playbook.md +469 -0
  210. package/development/03-checklists/architecture-review-checklist.md +168 -0
  211. package/development/03-checklists/data-migration-checklist.md +157 -0
  212. package/development/03-checklists/oncall-handover-checklist.md +173 -0
  213. package/development/03-checklists/pr-checklist.md +158 -0
  214. package/development/03-checklists/production-readiness-checklist.md +190 -0
  215. package/development/03-checklists/release-readiness-checklist.md +154 -0
  216. package/development/03-checklists/security-review-checklist.md +182 -0
  217. package/development/04-antipatterns/api-antipatterns.md +657 -0
  218. package/development/04-antipatterns/architecture-antipatterns.md +686 -0
  219. package/development/04-antipatterns/backend-antipatterns.md +648 -0
  220. package/development/04-antipatterns/cicd-antipatterns.md +540 -0
  221. package/development/04-antipatterns/code-smell-antipatterns.md +571 -0
  222. package/development/04-antipatterns/data-antipatterns.md +658 -0
  223. package/development/04-antipatterns/database-antipatterns.md +578 -0
  224. package/development/04-antipatterns/frontend-antipatterns.md +635 -0
  225. package/development/04-antipatterns/reliability-antipatterns.md +700 -0
  226. package/development/04-antipatterns/security-antipatterns.md +747 -0
  227. package/development/05-cases/case-api-version-migration.md +428 -0
  228. package/development/05-cases/case-authorization-hardening.md +383 -0
  229. package/development/05-cases/case-bluegreen-rollback.md +466 -0
  230. package/development/05-cases/case-cache-snowball-protection.md +485 -0
  231. package/development/05-cases/case-ci-cd-pipeline.md +544 -0
  232. package/development/05-cases/case-database-scaling.md +500 -0
  233. package/development/05-cases/case-db-hotspot-optimization.md +487 -0
  234. package/development/05-cases/case-incident-mttr-reduction.md +563 -0
  235. package/development/05-cases/case-microservice-migration.md +375 -0
  236. package/development/05-cases/case-performance-optimization.md +406 -0
  237. package/development/05-cases/case-security-incident-response.md +345 -0
  238. package/development/06-glossary/full-stack-glossary.md +166 -0
  239. package/development/09-maturity/quarterly-audit-template.md +35 -0
  240. package/development/11-ui-excellence/ui-aesthetic-system.md +41 -0
  241. package/development/11-ui-excellence/ui-engineering-excellence.md +435 -0
  242. package/development/12-scenarios/development-scenarios-guide.md +565 -0
  243. package/development/13-implementation-assets/implementation-toolkit.md +282 -0
  244. package/development/13-implementation-assets/knowledge-gates-execution.md +43 -0
  245. package/development/14-full-lifecycle/software-lifecycle-gates.md +511 -0
  246. package/development/15-lifecycle-templates/project-templates-collection.md +791 -0
  247. package/development/api-contract-and-versioning-guide.md +36 -0
  248. package/development/api-governance-complete.md +43 -0
  249. package/development/backend-engineering-complete.md +43 -0
  250. package/development/code-review-quality-complete.md +43 -0
  251. package/development/concurrency-reliability-complete.md +43 -0
  252. package/development/database-engineering-complete.md +43 -0
  253. package/development/engineering-effectiveness-complete.md +43 -0
  254. package/development/engineering-standards-deep-dive.md +38 -0
  255. package/development/frontend-engineering-complete.md +43 -0
  256. package/development/performance-capacity-complete.md +43 -0
  257. package/development/refactor-migration-complete.md +42 -0
  258. package/development/refactoring-and-techdebt-playbook.md +37 -0
  259. package/development/security-in-development-complete.md +43 -0
  260. package/devops/01-standards/cicd-pipeline-complete.md +262 -0
  261. package/devops/01-standards/docker-complete.md +1490 -0
  262. package/devops/01-standards/github-actions-complete.md +337 -0
  263. package/devops/01-standards/kubernetes-complete.md +638 -0
  264. package/devops/01-standards/terraform-complete.md +2117 -0
  265. package/devops/02-playbooks/docker-compose-playbook.md +233 -0
  266. package/devops/02-playbooks/docker-k8s-production-playbook.md +186 -0
  267. package/devops/02-playbooks/docker-production-playbook.md +952 -0
  268. package/edge-iot/01-standards/edge-iot-complete.md +473 -0
  269. package/experts/architect/api-design.md +178 -0
  270. package/experts/architect/methodology.md +124 -0
  271. package/experts/architect/security.md +75 -0
  272. package/experts/backend-lead/methodology.md +216 -0
  273. package/experts/devops/methodology.md +160 -0
  274. package/experts/frontend-lead/methodology.md +178 -0
  275. package/experts/product-manager/industry/ecommerce.md +43 -0
  276. package/experts/product-manager/industry/saas.md +40 -0
  277. package/experts/product-manager/methodology.md +97 -0
  278. package/experts/qa-lead/methodology.md +123 -0
  279. package/experts/qa-lead/test-strategy.md +128 -0
  280. package/experts/uiux-designer/methodology.md +125 -0
  281. package/frontend/01-standards/accessibility-complete.md +532 -0
  282. package/frontend/01-standards/accessibility-standard.md +74 -0
  283. package/frontend/01-standards/admin-dashboard-and-crud.md +72 -0
  284. package/frontend/01-standards/design-tokens-complete.md +444 -0
  285. package/frontend/01-standards/forms-and-validation.md +77 -0
  286. package/frontend/01-standards/frontend-architecture-and-layering.md +119 -0
  287. package/frontend/01-standards/i18n-and-localization.md +65 -0
  288. package/frontend/01-standards/nextjs-complete.md +451 -0
  289. package/frontend/01-standards/react-complete.md +713 -0
  290. package/frontend/01-standards/react-hooks-complete-guide.md +1100 -0
  291. package/frontend/01-standards/react-hooks-complete.md +1171 -0
  292. package/frontend/01-standards/seo-and-web-vitals.md +77 -0
  293. package/frontend/01-standards/state-management-complete.md +444 -0
  294. package/frontend/01-standards/vue-complete.md +499 -0
  295. package/frontend/01-standards/vue3-complete.md +2002 -0
  296. package/frontend/01-standards/web-framework-best-practices.md +64 -0
  297. package/frontend/01-standards/web-performance-complete.md +495 -0
  298. package/frontend/02-playbooks/accessibility-a11y-playbook.md +161 -0
  299. package/frontend/02-playbooks/frontend-performance-playbook.md +707 -0
  300. package/frontend/02-playbooks/i18n-internationalization-playbook.md +120 -0
  301. package/frontend/02-playbooks/performance-optimization-playbook.md +163 -0
  302. package/frontend/02-playbooks/react-nextjs-production-playbook.md +167 -0
  303. package/frontend/02-playbooks/react-state-management-playbook.md +173 -0
  304. package/frontend/03-checklists/component-quality-checklist.md +166 -0
  305. package/frontend/03-checklists/frontend-launch-checklist.md +299 -0
  306. package/frontend/04-antipatterns/frontend-antipatterns.md +886 -0
  307. package/frontend/05-cases/case-performance-optimization.md +274 -0
  308. package/harmony/01-standards/harmonyos-arkts-standard.md +75 -0
  309. package/harmony/01-standards/harmonyos-design.md +65 -0
  310. package/high-quality-engineering-playbook.md +54 -0
  311. package/incident/01-standards/incident-response-complete.md +303 -0
  312. package/incident/02-playbooks/chaos-engineering-playbook.md +883 -0
  313. package/incident/02-playbooks/postmortem-playbook.md +398 -0
  314. package/incident/03-checklists/incident-readiness-checklist.md +181 -0
  315. package/incident/04-antipatterns/incident-antipatterns.md +490 -0
  316. package/incident/05-cases/case-cascade-failure.md +176 -0
  317. package/incident/06-glossary/incident-glossary.md +114 -0
  318. package/incident/postmortem-and-response-deep-dive.md +39 -0
  319. package/industries/ecommerce/ecommerce-complete.md +631 -0
  320. package/industries/education/education-complete.md +555 -0
  321. package/industries/fintech/fintech-complete.md +501 -0
  322. package/industries/gaming/gaming-complete.md +587 -0
  323. package/industries/healthcare/healthcare-complete.md +452 -0
  324. package/low-code/01-standards/low-code-complete.md +944 -0
  325. package/miniprogram/01-standards/ai-common-mistakes.md +61 -0
  326. package/miniprogram/01-standards/miniprogram-custom-navbar-capsule.md +77 -0
  327. package/miniprogram/01-standards/miniprogram-design.md +61 -0
  328. package/miniprogram/01-standards/miniprogram-standard.md +81 -0
  329. package/mobile/01-standards/android-material-design.md +70 -0
  330. package/mobile/01-standards/flutter-complete.md +384 -0
  331. package/mobile/01-standards/ios-design-hig.md +78 -0
  332. package/mobile/01-standards/mobile-app-standard.md +85 -0
  333. package/mobile/01-standards/react-native-complete.md +352 -0
  334. package/mobile/02-playbooks/mobile-cross-platform-playbook.md +175 -0
  335. package/mobile/02-playbooks/mobile-performance.md +473 -0
  336. package/mobile/03-checklists/mobile-release-checklist.md +234 -0
  337. package/mobile/04-antipatterns/mobile-antipatterns.md +798 -0
  338. package/mobile/05-cases/case-app-performance.md +500 -0
  339. package/mobile/05-cases/case-app-startup-optimization.md +218 -0
  340. package/mobile/06-glossary/mobile-glossary.md +484 -0
  341. package/observability/01-standards/observability-standards.md +103 -0
  342. package/observability/02-playbooks/prometheus-grafana-playbook.md +135 -0
  343. package/observability/02-playbooks/structured-logging-playbook.md +73 -0
  344. package/observability/03-checklists/observability-checklist.md +54 -0
  345. package/observability/04-antipatterns/observability-antipatterns.md +106 -0
  346. package/operations/01-standards/prometheus-monitoring-complete.md +1578 -0
  347. package/operations/02-playbooks/capacity-planning-playbook.md +620 -0
  348. package/operations/03-checklists/production-launch-checklist.md +365 -0
  349. package/operations/04-antipatterns/operations-antipatterns.md +664 -0
  350. package/operations/05-cases/case-sre-practices.md +581 -0
  351. package/operations/06-glossary/operations-glossary.md +120 -0
  352. package/operations/aiops-anomaly-detection.md +758 -0
  353. package/operations/capacity-planning.md +1061 -0
  354. package/operations/chaos-engineering.md +659 -0
  355. package/operations/incident-command-system.md +38 -0
  356. package/operations/observability-complete.md +442 -0
  357. package/operations/slo-sli-playbook.md +517 -0
  358. package/operations/sre-operations-deep-dive.md +39 -0
  359. package/package.json +8 -0
  360. package/performance/01-standards/performance-and-scalability.md +80 -0
  361. package/performance/01-standards/performance-standards.md +156 -0
  362. package/performance/02-playbooks/query-optimization-playbook.md +103 -0
  363. package/performance/03-checklists/performance-checklist.md +56 -0
  364. package/performance/04-antipatterns/performance-antipatterns.md +146 -0
  365. package/product/01-standards/product-management-complete.md +285 -0
  366. package/product/02-playbooks/feature-launch-playbook.md +207 -0
  367. package/product/02-playbooks/user-research-playbook.md +532 -0
  368. package/product/03-checklists/feature-launch-checklist.md +275 -0
  369. package/product/04-antipatterns/product-antipatterns.md +355 -0
  370. package/product/05-cases/case-mvp-to-scale.md +384 -0
  371. package/product/06-glossary/product-glossary.md +462 -0
  372. package/product/feature-prioritization-framework.md +40 -0
  373. package/product/kpi-and-metric-tree.md +37 -0
  374. package/product/product-discovery-and-prd-deep-dive.md +41 -0
  375. package/quantum/01-standards/quantum-complete.md +1186 -0
  376. package/security/01-standards/api-security-complete.md +511 -0
  377. package/security/01-standards/container-runtime-security.md +574 -0
  378. package/security/01-standards/data-protection-gdpr.md +543 -0
  379. package/security/01-standards/owasp-top10-complete.md +1890 -0
  380. package/security/01-standards/secure-coding-baseline.md +90 -0
  381. package/security/01-standards/supply-chain-security.md +441 -0
  382. package/security/01-standards/web-security-checklist.md +108 -0
  383. package/security/01-standards/zero-trust-architecture.md +521 -0
  384. package/security/02-playbooks/auth-sso-playbook.md +166 -0
  385. package/security/02-playbooks/incident-response-security-playbook.md +588 -0
  386. package/security/02-playbooks/owasp-api-security-playbook.md +129 -0
  387. package/security/02-playbooks/payment-integration-playbook.md +119 -0
  388. package/security/02-playbooks/penetration-testing-playbook.md +517 -0
  389. package/security/03-checklists/security-audit-checklist.md +356 -0
  390. package/security/04-antipatterns/security-coding-antipatterns.md +580 -0
  391. package/security/05-cases/case-log4shell-incident.md +537 -0
  392. package/security/05-cases/case-major-breaches.md +468 -0
  393. package/security/06-glossary/security-glossary.md +212 -0
  394. package/security/compliance-automation.md +993 -0
  395. package/security/container-security.md +680 -0
  396. package/security/devsecops-complete.md +426 -0
  397. package/security/sast-dast-sca.md +775 -0
  398. package/security/secrets-management.md +594 -0
  399. package/security/security-architecture-deep-dive.md +37 -0
  400. package/security/threat-modeling-stride-playbook.md +40 -0
  401. package/seed-templates/auth-system.md +59 -0
  402. package/seed-templates/blog-content.md +94 -0
  403. package/seed-templates/dashboard.md +89 -0
  404. package/seed-templates/docs-site.md +73 -0
  405. package/seed-templates/e-commerce.md +50 -0
  406. package/seed-templates/saas-landing.md +92 -0
  407. package/seed-templates/settings-page.md +51 -0
  408. package/testing/01-standards/test-strategy-and-layering.md +83 -0
  409. package/testing/01-standards/testing-strategy-complete.md +422 -0
  410. package/testing/01-standards/unit-testing-best-practices.md +118 -0
  411. package/testing/02-playbooks/e2e-testing-playbook.md +988 -0
  412. package/testing/02-playbooks/testing-strategy-playbook.md +126 -0
  413. package/testing/03-checklists/test-strategy-checklist.md +208 -0
  414. package/testing/04-antipatterns/testing-antipatterns.md +718 -0
  415. package/testing/05-cases/case-testing-transformation.md +300 -0
  416. package/testing/06-glossary/testing-glossary.md +110 -0
  417. package/testing/risk-based-test-matrix.md +36 -0
  418. package/testing/testing-strategy-deep-dive.md +37 -0
@@ -0,0 +1,580 @@
1
+ ---
2
+ id: security-coding-antipatterns
3
+ title: 安全编码反模式库
4
+ domain: security
5
+ category: 04-antipatterns
6
+ difficulty: intermediate
7
+ tags: [antipatterns, coding, concatenation, hardcoded, password, plaintext, secrets, security]
8
+ quality_score: 70
9
+ last_updated: 2026-06-15
10
+ ---
11
+ # 安全编码反模式库
12
+
13
+ > 覆盖 OWASP Top 10 高频漏洞对应的编码反模式,每个反模式包含描述、漏洞代码、修复代码和检测工具。
14
+
15
+ ---
16
+
17
+ ## 反模式 1:硬编码密钥 (Hardcoded Secrets)
18
+
19
+ ### 描述
20
+
21
+ 将 API 密钥、数据库密码、Token 等敏感凭据直接写入源代码或配置文件并提交到版本控制。一旦代码泄露(公开仓库、离职员工、供应链攻击),攻击者可直接获取凭据访问后端资源。
22
+
23
+ ### 风险等级
24
+
25
+ **严重 (Critical)** — CWE-798
26
+
27
+ ### 漏洞代码
28
+
29
+ ```python
30
+ # bad: 密钥直接硬编码
31
+ import boto3
32
+
33
+ AWS_ACCESS_KEY = "AKIAIOSFODNN7EXAMPLE"
34
+ AWS_SECRET_KEY = "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"
35
+
36
+ client = boto3.client(
37
+ "s3",
38
+ aws_access_key_id=AWS_ACCESS_KEY,
39
+ aws_secret_access_key=AWS_SECRET_KEY,
40
+ )
41
+ ```
42
+
43
+ ```javascript
44
+ // bad: 数据库连接串包含明文密码
45
+ const mongoose = require("mongoose");
46
+ mongoose.connect("mongodb://admin:P@ssw0rd123@prod-db:27017/myapp");
47
+ ```
48
+
49
+ ### 修复代码
50
+
51
+ ```python
52
+ # good: 从环境变量或密钥管理服务获取
53
+ import os
54
+ import boto3
55
+
56
+ client = boto3.client(
57
+ "s3",
58
+ aws_access_key_id=os.environ["AWS_ACCESS_KEY_ID"],
59
+ aws_secret_access_key=os.environ["AWS_SECRET_ACCESS_KEY"],
60
+ )
61
+ ```
62
+
63
+ ```javascript
64
+ // good: 使用环境变量 + dotenv(.env 加入 .gitignore)
65
+ require("dotenv").config();
66
+ const mongoose = require("mongoose");
67
+ mongoose.connect(process.env.MONGODB_URI);
68
+ ```
69
+
70
+ ### 检测工具
71
+
72
+ | 工具 | 类型 | 说明 |
73
+ |------|------|------|
74
+ | **git-secrets** | Pre-commit Hook | AWS 官方密钥扫描 |
75
+ | **TruffleHog** | 历史扫描 | 扫描 Git 历史中的高熵字符串 |
76
+ | **detect-secrets** (Yelp) | CI 集成 | 基于插件的秘密检测 |
77
+ | **GitHub Secret Scanning** | SaaS | 自动扫描公开仓库 |
78
+ | **HashiCorp Vault** | 运行时 | 动态秘密发放与轮转 |
79
+
80
+ ---
81
+
82
+ ## 反模式 2:SQL 拼接 (SQL Concatenation)
83
+
84
+ ### 描述
85
+
86
+ 将用户输入直接拼接进 SQL 语句,导致 SQL 注入攻击。攻击者可绕过认证、窃取数据、删库或执行系统命令。
87
+
88
+ ### 风险等级
89
+
90
+ **严重 (Critical)** — CWE-89
91
+
92
+ ### 漏洞代码
93
+
94
+ ```python
95
+ # bad: 字符串拼接构造 SQL
96
+ def get_user(username):
97
+ query = f"SELECT * FROM users WHERE username = '{username}'"
98
+ cursor.execute(query)
99
+ return cursor.fetchone()
100
+
101
+ # 攻击输入: username = "' OR '1'='1' --"
102
+ # 实际执行: SELECT * FROM users WHERE username = '' OR '1'='1' --'
103
+ ```
104
+
105
+ ```java
106
+ // bad: Java 中的字符串拼接
107
+ String query = "SELECT * FROM orders WHERE user_id = " + userId;
108
+ Statement stmt = connection.createStatement();
109
+ ResultSet rs = stmt.executeQuery(query);
110
+ ```
111
+
112
+ ### 修复代码
113
+
114
+ ```python
115
+ # good: 参数化查询
116
+ def get_user(username):
117
+ query = "SELECT * FROM users WHERE username = %s"
118
+ cursor.execute(query, (username,))
119
+ return cursor.fetchone()
120
+ ```
121
+
122
+ ```python
123
+ # good: ORM(SQLAlchemy)
124
+ user = session.query(User).filter(User.username == username).first()
125
+ ```
126
+
127
+ ```java
128
+ // good: PreparedStatement
129
+ String query = "SELECT * FROM orders WHERE user_id = ?";
130
+ PreparedStatement pstmt = connection.prepareStatement(query);
131
+ pstmt.setInt(1, userId);
132
+ ResultSet rs = pstmt.executeQuery();
133
+ ```
134
+
135
+ ### 检测工具
136
+
137
+ | 工具 | 类型 | 说明 |
138
+ |------|------|------|
139
+ | **SQLMap** | DAST | 自动化 SQL 注入检测与利用 |
140
+ | **Bandit** | SAST (Python) | 检测 SQL 拼接模式 |
141
+ | **SonarQube** | SAST | 多语言 SQL 注入规则 |
142
+ | **Semgrep** | SAST | 自定义规则检测拼接模式 |
143
+
144
+ ---
145
+
146
+ ## 反模式 3:明文密码存储 (Plaintext Password Storage)
147
+
148
+ ### 描述
149
+
150
+ 将用户密码以明文或简单哈希(MD5/SHA1)存储在数据库中。数据库泄露后攻击者可直接获取或通过彩虹表快速破解所有用户密码。
151
+
152
+ ### 风险等级
153
+
154
+ **严重 (Critical)** — CWE-256, CWE-916
155
+
156
+ ### 漏洞代码
157
+
158
+ ```python
159
+ # bad: 明文存储
160
+ def register(username, password):
161
+ db.execute("INSERT INTO users (username, password) VALUES (%s, %s)",
162
+ (username, password))
163
+
164
+ # bad: 使用 MD5(无盐值,可彩虹表破解)
165
+ import hashlib
166
+ def register(username, password):
167
+ hashed = hashlib.md5(password.encode()).hexdigest()
168
+ db.execute("INSERT INTO users (username, password) VALUES (%s, %s)",
169
+ (username, hashed))
170
+ ```
171
+
172
+ ### 修复代码
173
+
174
+ ```python
175
+ # good: 使用 bcrypt(自带盐值 + 自适应代价因子)
176
+ import bcrypt
177
+
178
+ def register(username, password):
179
+ salt = bcrypt.gensalt(rounds=12)
180
+ hashed = bcrypt.hashpw(password.encode("utf-8"), salt)
181
+ db.execute("INSERT INTO users (username, password_hash) VALUES (%s, %s)",
182
+ (username, hashed.decode("utf-8")))
183
+
184
+ def verify(username, password):
185
+ row = db.fetchone("SELECT password_hash FROM users WHERE username = %s", (username,))
186
+ return bcrypt.checkpw(password.encode("utf-8"), row["password_hash"].encode("utf-8"))
187
+ ```
188
+
189
+ ```python
190
+ # good: 使用 argon2(OWASP 推荐首选)
191
+ from argon2 import PasswordHasher
192
+
193
+ ph = PasswordHasher(time_cost=3, memory_cost=65536, parallelism=4)
194
+
195
+ def register(username, password):
196
+ hashed = ph.hash(password)
197
+ db.execute("INSERT INTO users (username, password_hash) VALUES (%s, %s)",
198
+ (username, hashed))
199
+
200
+ def verify(username, password):
201
+ row = db.fetchone("SELECT password_hash FROM users WHERE username = %s", (username,))
202
+ return ph.verify(row["password_hash"], password)
203
+ ```
204
+
205
+ ### 检测工具
206
+
207
+ | 工具 | 类型 | 说明 |
208
+ |------|------|------|
209
+ | **Semgrep** | SAST | 检测 hashlib.md5/sha1 用于密码场景 |
210
+ | **SonarQube** | SAST | 弱哈希使用规则 |
211
+ | **CrackStation** | 离线测试 | 验证哈希抗彩虹表强度 |
212
+
213
+ ---
214
+
215
+ ## 反模式 4:过度权限 (Excessive Privileges)
216
+
217
+ ### 描述
218
+
219
+ 应用使用数据库 root 账户运行、服务账号拥有 admin 权限、IAM 策略使用 `*` 通配符。违反最小权限原则,一旦应用被攻破,攻击面覆盖全部资源。
220
+
221
+ ### 风险等级
222
+
223
+ **高 (High)** — CWE-250, CWE-269
224
+
225
+ ### 漏洞代码
226
+
227
+ ```yaml
228
+ # bad: AWS IAM 策略给予所有权限
229
+ {
230
+ "Version": "2012-10-17",
231
+ "Statement": [{
232
+ "Effect": "Allow",
233
+ "Action": "*",
234
+ "Resource": "*"
235
+ }]
236
+ }
237
+ ```
238
+
239
+ ```python
240
+ # bad: 应用使用 root 连接数据库
241
+ DB_USER = "root"
242
+ DB_PASS = "rootpassword"
243
+ connection = psycopg2.connect(host="db", user=DB_USER, password=DB_PASS, dbname="app")
244
+ ```
245
+
246
+ ### 修复代码
247
+
248
+ ```yaml
249
+ # good: 最小权限 IAM 策略
250
+ {
251
+ "Version": "2012-10-17",
252
+ "Statement": [{
253
+ "Effect": "Allow",
254
+ "Action": [
255
+ "s3:GetObject",
256
+ "s3:PutObject"
257
+ ],
258
+ "Resource": "arn:aws:s3:::my-bucket/uploads/*"
259
+ }]
260
+ }
261
+ ```
262
+
263
+ ```sql
264
+ -- good: 创建专用应用账户并限制权限
265
+ CREATE USER app_service WITH PASSWORD 'generated_password';
266
+ GRANT SELECT, INSERT, UPDATE ON orders, products, users TO app_service;
267
+ -- 不授予 DELETE、DROP、ALTER 等破坏性权限
268
+ ```
269
+
270
+ ### 检测工具
271
+
272
+ | 工具 | 类型 | 说明 |
273
+ |------|------|------|
274
+ | **IAM Access Analyzer** | AWS 原生 | 检测过度开放的 IAM 策略 |
275
+ | **Prowler** | 云安全审计 | CIS Benchmark 检查 |
276
+ | **Checkov** | IaC 扫描 | Terraform/CloudFormation 权限审计 |
277
+ | **pgAudit** | 数据库 | PostgreSQL 权限使用审计 |
278
+
279
+ ---
280
+
281
+ ## 反模式 5:不安全的反序列化 (Insecure Deserialization)
282
+
283
+ ### 描述
284
+
285
+ 直接反序列化不可信数据(用户输入、网络传入、外部文件),攻击者可构造恶意 payload 实现远程代码执行(RCE)。Java 的 `ObjectInputStream`、Python 的 `pickle`、PHP 的 `unserialize` 是高危入口。
286
+
287
+ ### 风险等级
288
+
289
+ **严重 (Critical)** — CWE-502
290
+
291
+ ### 漏洞代码
292
+
293
+ ```python
294
+ # bad: 直接 pickle 反序列化用户数据
295
+ import pickle
296
+ import base64
297
+
298
+ def load_session(cookie_value):
299
+ data = base64.b64decode(cookie_value)
300
+ return pickle.loads(data) # RCE 风险!
301
+
302
+ # 攻击者可构造 pickle payload 执行任意命令
303
+ ```
304
+
305
+ ```java
306
+ // bad: 直接反序列化网络流
307
+ ObjectInputStream ois = new ObjectInputStream(socket.getInputStream());
308
+ Object obj = ois.readObject(); // 可触发 gadget chain RCE
309
+ ```
310
+
311
+ ### 修复代码
312
+
313
+ ```python
314
+ # good: 使用安全的序列化格式
315
+ import json
316
+ import hmac
317
+ import hashlib
318
+
319
+ SECRET_KEY = os.environ["SESSION_SECRET"]
320
+
321
+ def load_session(cookie_value):
322
+ payload, signature = cookie_value.rsplit(".", 1)
323
+ expected_sig = hmac.new(SECRET_KEY.encode(), payload.encode(), hashlib.sha256).hexdigest()
324
+ if not hmac.compare_digest(signature, expected_sig):
325
+ raise ValueError("Invalid session signature")
326
+ return json.loads(base64.b64decode(payload))
327
+ ```
328
+
329
+ ```java
330
+ // good: 使用白名单过滤的反序列化
331
+ ObjectInputStream ois = new ValidatingObjectInputStream(inputStream);
332
+ ((ValidatingObjectInputStream) ois).accept(AllowedClass.class);
333
+ Object obj = ois.readObject();
334
+ ```
335
+
336
+ ### 检测工具
337
+
338
+ | 工具 | 类型 | 说明 |
339
+ |------|------|------|
340
+ | **Bandit** | SAST (Python) | B301 规则检测 pickle.loads |
341
+ | **ysoserial** | 渗透测试 | Java 反序列化 payload 生成 |
342
+ | **Semgrep** | SAST | 多语言反序列化规则 |
343
+
344
+ ---
345
+
346
+ ## 反模式 6:CORS 配置错误 (CORS Misconfiguration)
347
+
348
+ ### 描述
349
+
350
+ 将 `Access-Control-Allow-Origin` 设置为 `*` 或动态反射请求的 Origin 而不验证,允许任意恶意网站发起跨域请求读取响应数据,可窃取用户敏感信息。
351
+
352
+ ### 风险等级
353
+
354
+ **高 (High)** — CWE-942
355
+
356
+ ### 漏洞代码
357
+
358
+ ```python
359
+ # bad: 允许所有来源
360
+ from flask import Flask
361
+ from flask_cors import CORS
362
+
363
+ app = Flask(__name__)
364
+ CORS(app, origins="*", supports_credentials=True)
365
+ # 同时设置 * 和 credentials=True 浏览器会拒绝,
366
+ # 但开发者常改为反射 Origin 头来"修复"
367
+ ```
368
+
369
+ ```javascript
370
+ // bad: 动态反射 Origin(等同于 *)
371
+ app.use((req, res, next) => {
372
+ res.setHeader("Access-Control-Allow-Origin", req.headers.origin);
373
+ res.setHeader("Access-Control-Allow-Credentials", "true");
374
+ next();
375
+ });
376
+ ```
377
+
378
+ ### 修复代码
379
+
380
+ ```python
381
+ # good: 白名单校验
382
+ ALLOWED_ORIGINS = [
383
+ "https://app.example.com",
384
+ "https://admin.example.com",
385
+ ]
386
+
387
+ CORS(app, origins=ALLOWED_ORIGINS, supports_credentials=True)
388
+ ```
389
+
390
+ ```javascript
391
+ // good: 显式白名单
392
+ const allowedOrigins = new Set([
393
+ "https://app.example.com",
394
+ "https://admin.example.com",
395
+ ]);
396
+
397
+ app.use((req, res, next) => {
398
+ const origin = req.headers.origin;
399
+ if (allowedOrigins.has(origin)) {
400
+ res.setHeader("Access-Control-Allow-Origin", origin);
401
+ res.setHeader("Access-Control-Allow-Credentials", "true");
402
+ }
403
+ next();
404
+ });
405
+ ```
406
+
407
+ ### 检测工具
408
+
409
+ | 工具 | 类型 | 说明 |
410
+ |------|------|------|
411
+ | **OWASP ZAP** | DAST | CORS 策略检测 |
412
+ | **Burp Suite** | DAST | CORS 配置审计 |
413
+ | **ESLint Plugin Security** | SAST (JS) | 检测宽松 CORS 配置 |
414
+
415
+ ---
416
+
417
+ ## 反模式 7:不验证 JWT (Unvalidated JWT)
418
+
419
+ ### 描述
420
+
421
+ 接收 JWT 后不验证签名、不检查过期时间、信任 `alg: none`、或使用对称密钥但密钥太弱。攻击者可伪造令牌冒充任意用户。
422
+
423
+ ### 风险等级
424
+
425
+ **严重 (Critical)** — CWE-345, CWE-347
426
+
427
+ ### 漏洞代码
428
+
429
+ ```python
430
+ # bad: 不验证签名,只解码
431
+ import jwt
432
+
433
+ def get_current_user(token):
434
+ payload = jwt.decode(token, options={"verify_signature": False})
435
+ return payload["user_id"] # 攻击者可伪造任意 user_id
436
+ ```
437
+
438
+ ```javascript
439
+ // bad: 允许 alg: none
440
+ const decoded = jwt.verify(token, secret, { algorithms: ["HS256", "none"] });
441
+ ```
442
+
443
+ ```python
444
+ # bad: 密钥太弱
445
+ SECRET = "secret" # 可被暴力破解
446
+ token = jwt.encode(payload, SECRET, algorithm="HS256")
447
+ ```
448
+
449
+ ### 修复代码
450
+
451
+ ```python
452
+ # good: 完整验证
453
+ import jwt
454
+ from datetime import datetime, timezone
455
+
456
+ PUBLIC_KEY = open("public.pem").read()
457
+
458
+ def get_current_user(token):
459
+ try:
460
+ payload = jwt.decode(
461
+ token,
462
+ PUBLIC_KEY,
463
+ algorithms=["RS256"], # 只允许特定算法
464
+ options={
465
+ "verify_exp": True, # 验证过期
466
+ "verify_iss": True, # 验证签发者
467
+ "verify_aud": True, # 验证受众
468
+ },
469
+ issuer="https://auth.example.com",
470
+ audience="https://api.example.com",
471
+ )
472
+ return payload["user_id"]
473
+ except jwt.ExpiredSignatureError:
474
+ raise AuthError("Token expired")
475
+ except jwt.InvalidTokenError:
476
+ raise AuthError("Invalid token")
477
+ ```
478
+
479
+ ### 检测工具
480
+
481
+ | 工具 | 类型 | 说明 |
482
+ |------|------|------|
483
+ | **jwt_tool** | 渗透测试 | JWT 漏洞全面检测 |
484
+ | **Semgrep** | SAST | JWT 验证规则 |
485
+ | **Burp JWT Editor** | DAST | JWT 篡改与测试 |
486
+
487
+ ---
488
+
489
+ ## 反模式 8:使用弱加密算法 (Weak Cryptography)
490
+
491
+ ### 描述
492
+
493
+ 使用已被攻破的加密算法(DES、3DES、RC4、MD5 用于完整性校验、SHA1 用于证书签名)或 ECB 模式加密。数据可被解密或伪造。
494
+
495
+ ### 风险等级
496
+
497
+ **高 (High)** — CWE-327, CWE-328
498
+
499
+ ### 漏洞代码
500
+
501
+ ```python
502
+ # bad: 使用 DES 加密
503
+ from Crypto.Cipher import DES
504
+ cipher = DES.new(b"8bytekey", DES.MODE_ECB)
505
+ encrypted = cipher.encrypt(b"sensitiv") # ECB 模式 + DES = 双重问题
506
+ ```
507
+
508
+ ```python
509
+ # bad: MD5 用于数据完整性校验
510
+ import hashlib
511
+ checksum = hashlib.md5(file_data).hexdigest()
512
+ # MD5 存在碰撞攻击,不能保证完整性
513
+ ```
514
+
515
+ ```java
516
+ // bad: SHA1 用于证书签名
517
+ MessageDigest md = MessageDigest.getInstance("SHA-1");
518
+ byte[] digest = md.digest(data);
519
+ ```
520
+
521
+ ### 修复代码
522
+
523
+ ```python
524
+ # good: 使用 AES-256-GCM(认证加密)
525
+ from cryptography.hazmat.primitives.ciphers.aead import AESGCM
526
+ import os
527
+
528
+ key = AESGCM.generate_key(bit_length=256)
529
+ aesgcm = AESGCM(key)
530
+ nonce = os.urandom(12)
531
+ ciphertext = aesgcm.encrypt(nonce, plaintext, associated_data)
532
+ ```
533
+
534
+ ```python
535
+ # good: SHA-256 用于完整性校验
536
+ import hashlib
537
+ checksum = hashlib.sha256(file_data).hexdigest()
538
+ ```
539
+
540
+ ```python
541
+ # good: HMAC 用于消息认证
542
+ import hmac, hashlib
543
+ mac = hmac.new(secret_key, message, hashlib.sha256).hexdigest()
544
+ ```
545
+
546
+ ### 检测工具
547
+
548
+ | 工具 | 类型 | 说明 |
549
+ |------|------|------|
550
+ | **Bandit** | SAST (Python) | B303/B304 弱加密检测 |
551
+ | **SonarQube** | SAST | 弱加密算法规则 |
552
+ | **ssl-enum-ciphers** (nmap) | 网络扫描 | TLS 弱密码套件检测 |
553
+ | **testssl.sh** | 网络扫描 | TLS 配置完整测试 |
554
+
555
+ ---
556
+
557
+ ## 综合防护矩阵
558
+
559
+ | 反模式 | OWASP 类别 | CWE | 自动化检测可行性 | 修复优先级 |
560
+ |--------|-----------|-----|------------------|-----------|
561
+ | 硬编码密钥 | A07:2021 | 798 | 高 | P0 |
562
+ | SQL 拼接 | A03:2021 | 89 | 高 | P0 |
563
+ | 明文密码 | A02:2021 | 256/916 | 中 | P0 |
564
+ | 过度权限 | A01:2021 | 250/269 | 中 | P1 |
565
+ | 不安全反序列化 | A08:2021 | 502 | 中 | P0 |
566
+ | CORS 错误 | A05:2021 | 942 | 高 | P1 |
567
+ | JWT 不验证 | A07:2021 | 345/347 | 中 | P0 |
568
+ | 弱加密算法 | A02:2021 | 327/328 | 高 | P1 |
569
+
570
+ ---
571
+
572
+ ## Agent Checklist
573
+
574
+ - [ ] 所有反模式均包含描述、漏洞代码、修复代码和检测工具四部分
575
+ - [ ] 代码示例覆盖 Python、JavaScript/Node.js、Java 等主流语言
576
+ - [ ] CWE 编号和 OWASP 分类准确对应
577
+ - [ ] 修复方案符合当前行业最佳实践(bcrypt/argon2、参数化查询、AES-GCM 等)
578
+ - [ ] 检测工具列表包含 SAST、DAST、SCA 多种类型
579
+ - [ ] 综合防护矩阵提供优先级排序
580
+ - [ ] 文件行数 >= 300 行