{"id":5586,"date":"2026-01-01T10:19:40","date_gmt":"2026-01-01T01:19:40","guid":{"rendered":"https:\/\/secondlife.lol\/?p=5586"},"modified":"2026-01-01T10:22:44","modified_gmt":"2026-01-01T01:22:44","slug":"how-to-read-code-quality-report-flake8-bandit","status":"publish","type":"post","link":"https:\/\/secondlife.lol\/ja\/how-to-read-code-quality-report-flake8-bandit\/","title":{"rendered":"\ucd08\ubcf4\uc790\ub97c \uc704\ud55c \ucf54\ub4dc \ud488\uc9c8 \ub9ac\ud3ec\ud2b8(code quality report) \uc77d\uae30 1\ud3b8: flake8 \/ bandit \uacb0\uacfc, \uc5b4\ub514\ubd80\ud130 \ubcf4\uba74 \ub420\uae4c\uc694?"},"content":{"rendered":"<style>.kb-image5586_bd3f33-ab .kb-image-has-overlay:after{opacity:0.3;}<\/style>\n<div class=\"wp-block-kadence-image kb-image5586_bd3f33-ab\"><figure class=\"aligncenter size-full\"><img decoding=\"async\" width=\"512\" height=\"346\" src=\"https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-41.png\" alt=\"code quality report image\" class=\"kb-img wp-image-5721\" srcset=\"https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-41.png 512w, https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-41-300x203.png 300w, https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-41-18x12.png 18w\" sizes=\"(max-width: 512px) 100vw, 512px\" \/><\/figure><\/div>\n\n\n\n<p>\uc2dc\uc2a4\ud15c\uc744 \uac1c\ubc1c\ud574\ub450\uace0 \u201c\uac80\uc0ac \ub3cc\ub824\ubd24\ub354\ub2c8 \uc5d0\ub7ec\uac00 \ud55c\uac00\ub4dd\u2026\u201d  \uc774 \uc0c1\ud669\uc740 \uac1c\ubc1c\uc744 \uc2dc\uc791\ud574 \ubcf8 \ucd08\ubcf4\uc790\uc5d0\uac8c\ub294 \ub108\ubb34 \uc815\uc0c1\uc785\ub2c8\ub2e4.  \ucc98\uc74c\uc73c\ub85c \ucf54\ub4dc \ud488\uc9c8 \ub3c4\uad6c\ub97c \ub3cc\ub824\uc11c \ucf54\ub4dc \ud488\uc9c8 \ub9ac\ud3ec\ud2b8(<code>code quality report<\/code>)\ubcf4\uba74 \uac70\uc758 \ud56d\uc0c1 \uc774\ub7f0 \ub290\ub08c\uc774\uc8e0.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p>\u201c<a href=\"https:\/\/flake8.pycqa.org\/\" target=\"_blank\" rel=\"noopener\">flake8<\/a>, <a href=\"https:\/\/bandit.readthedocs.io\/\" target=\"_blank\" rel=\"noopener\">bandit<\/a> \ud55c \ubc88 \ub3cc\ub838\uc744 \ubfd0\uc778\ub370<br>\uc5d0\ub7ec\/\uacbd\uace0\uac00 \uc218\uc2ed, \uc218\ubc31 \uac1c\u2026<br>\uc774\uac78 \uc9c4\uc9dc \ub2e4 \uace0\uccd0\uc57c \ud558\ub098?\u201d<\/p>\n<\/blockquote>\n\n\n\n<p><a href=\"https:\/\/secondlife.lol\/ja\/quality-command-for-beginners\/\">\ucd08\ubcf4\uc790\ub97c \uc704\ud55c \ud488\uc9c8 \ucee4\ub9e8\ub4dc<\/a>\uc5d0\uc11c \ud55c\ubc88 \uc0b4\ud3b4\ubcf4\uae34 \ud588\ub294\ub370.. \ucf54\ub4dc \ud488\uc9c8 \ub3c4\uad6c\uac00 \ubb54\uc9c0\ubd80\ud130 \uad81\uae08\ud574\uc9c0\ub124. \uadf8\ucd78? \uc6b0\uc120 \uc55e\uc5d0\uc11c \ub9d0\ud55c\uac70 \ubd80\ud130 \uc0b4\ud3b4\ubcf4\uc2dc\uc8e0.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>flake8: Python \ucf54\ub4dc\ub97c \uc704\ud55c&nbsp;<strong>\uc815\uc801 \ucf54\ub4dc \ubd84\uc11d \ub3c4\uad6c(\ub9b0\ud130)<\/strong>\ub85c, \ucf54\ub4dc \uc2a4\ud0c0\uc77c \uc77c\uad00\uc131\uc744 \uc720\uc9c0\ud558\uace0 \uc77c\ubc18\uc801\uc778 \ud504\ub85c\uadf8\ub798\ubc0d \uc624\ub958\ub97c \uac10\uc9c0\ud558\ub294 \ub370 \uc0ac\uc6a9\ub429\ub2c8\ub2e4.\n<ul class=\"wp-block-list\">\n<li><\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>bandit: \ud30c\uc774\uc36c \ucf54\ub4dc\uc5d0\uc11c&nbsp;<strong>\uc77c\ubc18\uc801\uc778 \ubcf4\uc548 \ucde8\uc57d\uc810\uc744 \ucc3e\ub294 \ub370 \uc0ac\uc6a9\ub418\ub294 \uc815\uc801 \ubd84\uc11d(Static Analysis Security Testing, SAST) \ub3c4\uad6c<\/strong>\u3067\u3059\u3002<\/li>\n<\/ul>\n\n\n\n<p>\uc774\ub7f0\uac78 \ucc98\uc74c \ubcf4\uba74 \ub2f9\uc5f0\ud788 \ub9c9\ub9c9\ud569\ub2c8\ub2e4.<br>\uadf8\ub798\uc11c <strong>\uc774\ubc88 \ud3ec\uc2a4\ud2b8 \uc2dc\ub9ac\uc988\uc758 \ubaa9\ud45c<\/strong>\ub294 \ub531 \ud558\ub098\uc608\uc694.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p>\u201c\uc2e4\uc81c \ucf54\ub4dc \ud488\uc9c8 \ub9ac\ud3ec\ud2b8\ub97c \ubd24\uc744 \ub54c<br>\ub180\ub77c\uc9c0 \uc54a\uace0,<br>\uc5b4\ub514\ubd80\ud130 \uc190\ub300\uc57c \ud560\uc9c0<br>\ucc28\ubd84\ud788 \uacb0\uc815\ud560 \uc218 \uc788\uac8c \ub9cc\ub4dc\ub294 \uac83\u201d<\/p>\n<\/blockquote>\n\n\n\n<p>\uc624\ub298 1\ud3b8\uc5d0\uc11c\ub294 <strong>\uc804\ubc18\uc801\uc778 \uadf8\ub9bc\ub9cc<\/strong> \uba3c\uc800 \uc7a1\uc544\ubcfc\uac8c\uc694.<\/p>\n\n\n<style>.kb-table-of-content-nav.kb-table-of-content-id83_5f28a6-34 .kb-table-of-content-wrap{padding-top:var(--global-kb-spacing-sm, 1.5rem);padding-right:var(--global-kb-spacing-sm, 1.5rem);padding-bottom:var(--global-kb-spacing-sm, 1.5rem);padding-left:var(--global-kb-spacing-sm, 1.5rem);border-top:3px solid var(--global-palette2, #2B6CB0);border-right:3px solid var(--global-palette2, #2B6CB0);border-bottom:3px solid var(--global-palette2, #2B6CB0);border-left:3px solid var(--global-palette2, #2B6CB0);border-top-left-radius:5px;border-top-right-radius:5px;border-bottom-right-radius:5px;border-bottom-left-radius:5px;box-shadow:0px 0px 14px 0px rgba(0, 0, 0, 0.2);}.kb-table-of-content-nav.kb-table-of-content-id83_5f28a6-34 .kb-table-of-contents-title-wrap{padding-top:0px;padding-right:0px;padding-bottom:0px;padding-left:0px;}.kb-table-of-content-nav.kb-table-of-content-id83_5f28a6-34 .kb-table-of-contents-title-wrap{color:var(--global-palette2, #2B6CB0);}.kb-table-of-content-nav.kb-table-of-content-id83_5f28a6-34 .kb-table-of-contents-title{color:var(--global-palette2, #2B6CB0);font-size:28px;font-weight:regular;font-style:normal;}.kb-table-of-content-nav.kb-table-of-content-id83_5f28a6-34 .kb-table-of-content-wrap .kb-table-of-content-list{color:var(--global-palette1, #3182CE);line-height:2em;font-weight:regular;font-style:normal;margin-top:var(--global-kb-spacing-sm, 1.5rem);margin-right:0px;margin-bottom:0px;margin-left:0px;}.kb-table-of-content-nav.kb-table-of-content-id83_5f28a6-34 .kb-table-of-content-wrap .kb-table-of-content-list .kb-table-of-contents__entry:hover{color:var(--global-palette6, #718096);}@media all and (max-width: 1024px){.kb-table-of-content-nav.kb-table-of-content-id83_5f28a6-34 .kb-table-of-content-wrap{border-top:3px solid var(--global-palette2, #2B6CB0);border-right:3px solid var(--global-palette2, #2B6CB0);border-bottom:3px solid var(--global-palette2, #2B6CB0);border-left:3px solid var(--global-palette2, #2B6CB0);}}@media all and (max-width: 1024px){.kb-table-of-content-nav.kb-table-of-content-id83_5f28a6-34 .kb-table-of-contents-title{font-size:28px;}}@media all and (max-width: 767px){.kb-table-of-content-nav.kb-table-of-content-id83_5f28a6-34 .kb-table-of-content-wrap{border-top:3px solid var(--global-palette2, #2B6CB0);border-right:3px solid var(--global-palette2, #2B6CB0);border-bottom:3px solid var(--global-palette2, #2B6CB0);border-left:3px solid var(--global-palette2, #2B6CB0);}.kb-table-of-content-nav.kb-table-of-content-id83_5f28a6-34 .kb-table-of-contents-title{font-size:28px;}}<\/style>\n\n\n<h2 class=\"wp-block-heading\">1. flake8 vs bandit \u2013 \ub458\uc774 \ud558\ub294 \uc77c\uc774 \ub2e4\ub974\ub2e4<\/h2>\n\n\n<style>.kb-image5586_3539e3-26 .kb-image-has-overlay:after{opacity:0.3;}<\/style>\n<div class=\"wp-block-kadence-image kb-image5586_3539e3-26\"><figure class=\"aligncenter size-full\"><img decoding=\"async\" width=\"512\" height=\"346\" src=\"https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-42.png\" alt=\"flake8 vs bandit image\" class=\"kb-img wp-image-5723\" srcset=\"https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-42.png 512w, https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-42-300x203.png 300w, https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-42-18x12.png 18w\" sizes=\"(max-width: 512px) 100vw, 512px\" \/><\/figure><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">1-1. flake8\uc740 \u201c\uc2a4\ud0c0\uc77c + \uae30\ubcf8 \uc5d0\ub7ec \uccb4\ucee4\u201d<\/h3>\n\n\n\n<p>flake8\uc740 \ud06c\uac8c \ub450 \uac00\uc9c0\ub97c \ubd05\ub2c8\ub2e4.<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>\uc2a4\ud0c0\uc77c\/\ud615\uc2dd<\/strong>\n<ul class=\"wp-block-list\">\n<li>\uc904 \uae38\uc774, \uacf5\ubc31, import \uc21c\uc11c, \ub4e4\uc5ec\uc4f0\uae30 \ub4f1<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>\uae30\ubcf8\uc801\uc778 \ucf54\ub4dc \uc5d0\ub7ec<\/strong>\n<ul class=\"wp-block-list\">\n<li>\uc815\uc758 \uc548 \ub41c \uc774\ub984(F821)<\/li>\n\n\n\n<li>\uc0ac\uc6a9\ud558\uc9c0 \uc54a\ub294 \ubcc0\uc218\/import(F401 \ub4f1)<\/li>\n\n\n\n<li>\uc911\ubcf5 \uc815\uc758(F811) \ub4f1<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n\n\n\n<p>\uc989, flake8\uc740<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p>\u201c\uc774 \ucf54\ub4dc\ub294 <strong>\uc77d\uae30 \uc88b\uace0<\/strong>,<br>\uae30\ubcf8\uc801\uc778 \ubb38\ubc95\/\ud328\ud134\uc5d0\uc11c <strong>\uc704\ud5d8\ud55c \ubd80\ubd84\uc774 \uc5c6\ub294\uc9c0<\/strong> \ubd10\uc8fc\ub294 \uac80\uc0ac\uae30\u201d<\/p>\n<\/blockquote>\n\n\n\n<p>\ub85c \uc774\ud574\ud558\uba74 \ub429\ub2c8\ub2e4.<\/p>\n\n\n\n<p>\uc8fc\ub85c \uc774\ub7f0 \uac83\ub4e4\uc774 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>f-string placeholder \ubb38\uc81c (F541)<\/li>\n\n\n\n<li>\uc815\uc758 \uc548 \ub41c \uc774\ub984(F821)<\/li>\n\n\n\n<li>\uc911\ubcf5 \uc815\uc758(F811)<\/li>\n\n\n\n<li>import \uad00\ub828 \uacbd\uace0(E402 \ub4f1)<\/li>\n\n\n\n<li>\uc0ac\uc6a9 \uc548 \ub418\ub294 import\ub4e4 \uc794\ub729<\/li>\n<\/ul>\n\n\n\n<p>\u2192 \uc774\uac74 \ub300\ubd80\ubd84 <strong>\u201c\ucf54\ub4dc \uc815\ub9ac + \uae54\ub054\ud55c \ub9ac\ud329\ud1a0\ub9c1\u201d<\/strong> \ucabd \uc774\uc288\ub77c\uace0 \ubcf4\uba74 \ub429\ub2c8\ub2e4.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">1-2. bandit\uc740 \u201c\ubcf4\uc548 \uad00\uc810\uc5d0\uc11c \uc758\uc2ec\uc2a4\ub7ec\uc6b4 \ucf54\ub4dc \ucc3e\uae30\u201d<\/h3>\n\n\n\n<p>\ubc18\uba74\uc5d0 <strong>bandit<\/strong>\uc740 \uad00\uc810\uc774 \ub2e4\ub985\ub2c8\ub2e4.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p>\u201c\uc774 \ucf54\ub4dc, \ubcf4\uc548\uc801\uc73c\ub85c \ubd24\uc744 \ub54c<br>\uc704\ud5d8\ud55c \ud328\ud134\uc774 \uc228\uc5b4 \uc788\uc9c0 \uc54a\uc744\uae4c?\u201d<\/p>\n<\/blockquote>\n\n\n\n<p>\uc608\ub97c \ub4e4\uc5b4<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>MD5 \uac19\uc740 \uc57d\ud55c \ud574\uc2dc \uc54c\uace0\ub9ac\uc998 \uc0ac\uc6a9 (B303)<\/li>\n\n\n\n<li><code>mark_safe<\/code>\ub85c \ud544\ud130\ub9c1 \uc548 \ub41c HTML\uc744 \uadf8\ub300\ub85c \ucd9c\ub825<\/li>\n\n\n\n<li>f-string\uc73c\ub85c SQL\uc744 \ub9cc\ub4dc\ub294 \ucf54\ub4dc (SQL \uc778\uc81d\uc158 \uc704\ud5d8)<\/li>\n\n\n\n<li><code>urllib.request.urlopen<\/code>\ucc98\ub7fc \uc704\ud5d8 \uac00\ub2a5\uc131\uc774 \uc788\ub294 \ub124\ud2b8\uc6cc\ud06c \ud568\uc218<\/li>\n\n\n\n<li>\ud558\ub4dc\ucf54\ub529\ub41c \ube44\ubc00\ubc88\ud638\/\ud1a0\ud070 \ub4f1<\/li>\n<\/ul>\n\n\n\n<p>\uc774\ub7f0 \ud328\ud134\uc744 <strong>\ubcf4\uc548 \uacbd\uace0<\/strong>\ub85c \uc54c\ub824\uc90d\ub2c8\ub2e4.<\/p>\n\n\n\n<p>bandit \uacb0\uacfc\uac00 \uc544\ub798\uc640 \uac19\ub2e4\uba74<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>High: 3<\/li>\n\n\n\n<li>Medium: 10<\/li>\n\n\n\n<li>Low: 130<\/li>\n<\/ul>\n\n\n\n<p>\uc774 \uc22b\uc790\ub97c \uc5b4\ub5bb\uac8c \uc77d\uc5b4\uc57c \ud560\uae4c\uc694?<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">2. \ucf54\ub4dc \ud488\uc9c8 \ub9ac\ud3ec\ud2b8(code quality report) High \/ Medium \/ Low \u2013 \uc6b0\uc120\uc21c\uc704\ub97c \uc5b4\ub5bb\uac8c \uc7a1\uc744\uae4c?<\/h2>\n\n\n<style>.kb-image5586_63eaf4-f8 .kb-image-has-overlay:after{opacity:0.3;}<\/style>\n<div class=\"wp-block-kadence-image kb-image5586_63eaf4-f8\"><figure class=\"aligncenter size-full\"><img decoding=\"async\" width=\"512\" height=\"346\" src=\"https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-43.png\" alt=\"\uc6b0\uc120\uc21c\uc704 \uad6c\ubd84 \uc774\ubbf8\uc9c0\" class=\"kb-img wp-image-5725\" srcset=\"https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-43.png 512w, https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-43-300x203.png 300w, https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-43-18x12.png 18w\" sizes=\"(max-width: 512px) 100vw, 512px\" \/><\/figure><\/div>\n\n\n\n<p>\ucf54\ub4dc \ud488\uc9c8 \ub9ac\ud3ec\ud2b8(code quality report)\ub97c \ubcfc \ub54c <strong>\uc81c\uc77c \uc911\uc694\ud55c \uac83<\/strong>\u306f<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p>\u201c\ubaa8\ub4e0 \uacbd\uace0\ub97c \ub611\uac19\uc774 \ub300\ud558\uc9c0 \ub9d0 \uac83\u201d<\/p>\n<\/blockquote>\n\n\n\n<p>\u3067\u3059\u3002<\/p>\n\n\n\n<p>\ub300\ub7b5 \uc774\ub807\uac8c \uc0dd\uac01\ud558\uba74 \uc88b\uc544\uc694.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\ud83d\udd34 High (\uc2ec\uac01)<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\ub2f9\uc7a5 \uc2e4\uc81c \uc11c\ube44\uc2a4\uc5d0\uc11c<br><strong>\ubcf4\uc548 \uc0ac\uace0\ub098 \ub370\uc774\ud130 \uc720\ucd9c<\/strong>\ub85c \uc774\uc5b4\uc9c8 \uc218 \uc788\ub294 \uc218\uc900<\/li>\n\n\n\n<li>\u306f\u3044\uff1a\n<ul class=\"wp-block-list\">\n<li>\ud574\uc2dc\ub85c MD5 \uc0ac\uc6a9 (\ud1a0\ud070 \ucd94\uce21 \uc26c\uc6c0)<\/li>\n\n\n\n<li>\ud544\ud130\ub9c1 \uc548 \ub41c \uc0ac\uc6a9\uc790 \uc785\ub825\uc744 \uadf8\ub300\ub85c HTML\uc5d0 \ubfcc\ub9ac\ub294 \uacbd\uc6b0<\/li>\n\n\n\n<li>raw SQL\uc5d0 \uc9c1\uc811 \uc0ac\uc6a9\uc790 \uc785\ub825\uc744 \ub07c\uc6cc \ub123\ub294 \uacbd\uc6b0<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p>\ud83d\udc49 \uc804\ub7b5: <strong>\u201c\ucd5c\ub300\ud55c \ube68\ub9ac, \ube0c\ub79c\uce58\ub97c \ub530\ub85c \ud30c\uc11c, \uc601\ud5a5 \ubd84\uc11d+\uc218\uc815\uc744 \uac19\uc774 \uc9c4\ud589\u201d<\/strong><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\ud83d\udfe0 Medium (\uc911\uac04)<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\uc9c0\uae08 \ub2f9\uc7a5 \ud3ed\ubc1c(?)\ud558\uc9c4 \uc54a\uc9c0\ub9cc,<br><strong>\uc0c1\ud669\uc5d0 \ub530\ub77c \uc704\ud5d8\ud574\uc9c8 \uc218 \uc788\ub294 \ucf54\ub4dc\ub4e4<\/strong><\/li>\n\n\n\n<li>\u306f\u3044\uff1a\n<ul class=\"wp-block-list\">\n<li><code>mark_safe<\/code> \uc0ac\uc6a9 (\uc785\ub825\uc774 \uc548\uc804\ud558\ub2e4\uace0 \uac00\uc815\ud560 \ub54c)<\/li>\n\n\n\n<li>\uc798\ubabb \uc4f0\uba74 \uc778\uc81d\uc158 \uc704\ud5d8\uc774 \uc788\ub294 SQL \ud328\ud134<\/li>\n\n\n\n<li>URL \ud638\ucd9c \uc2dc \uc608\uc678 \ucc98\ub9ac\/\ud0c0\uc784\uc544\uc6c3 \ubd80\uc871 \ub4f1<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p>\ud83d\udc49 \uc804\ub7b5: <strong>High \ucc98\ub9ac \ub4a4\uc5d0 \ucc28\ub840\ub85c, \u201c\uc704\ud5d8\ud55c \ucf00\uc774\uc2a4\ubd80\ud130\u201d \uc21c\ucc28\uc801\uc73c\ub85c \ub9ac\ud329\ud1a0\ub9c1<\/strong><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\ud83d\udfe2 Low (\ub0ae\uc74c)<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\ub300\ubd80\ubd84 <strong>\u201c\uad8c\uc7a5\uc0ac\ud56d\u201d<\/strong> \uc218\uc900<\/li>\n\n\n\n<li>\u306f\u3044\uff1a\n<ul class=\"wp-block-list\">\n<li>\uc0ac\uc6a9\ub418\uc9c0 \uc54a\ub294 import<\/li>\n\n\n\n<li>\ub514\ubc84\uadf8\uc6a9 \ucf54\ub4dc \ud754\uc801<\/li>\n\n\n\n<li>\uc2a4\ud0c0\uc77c\uc5d0 \uac00\uae4c\uc6b4 \ubcf4\uc548 \uad8c\uc7a5 \ud328\ud134<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p>\ud83d\udc49 \uc804\ub7b5: \uc790\ub3d9\ud654 \ub3c4\uad6c(ex. autoflake, \ud3ec\ub9e4\ud130 \ub4f1)\ub85c <strong>\ud55c \ubc88\uc5d0 \uc815\ub9ac\ud560 \ud6c4\ubcf4<\/strong>\ub4e4\uc785\ub2c8\ub2e4.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">3. \uc774\ubc88 \ub9ac\ud3ec\ud2b8\uc5d0\uc11c \ud2b9\ud788 \ub208\uc5ec\uaca8\ubd10\uc57c \ud560 \ud3ec\uc778\ud2b8 3\uac00\uc9c0<\/h2>\n\n\n<style>.kb-image5586_72f58d-3c .kb-image-has-overlay:after{opacity:0.3;}<\/style>\n<div class=\"wp-block-kadence-image kb-image5586_72f58d-3c\"><figure class=\"aligncenter size-large\"><img decoding=\"async\" width=\"600\" height=\"400\" src=\"https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-44-1-600x400.jpg\" alt=\"\ubcf4\uc548 \uacbd\uace0 \ud574\uc11d \uc774\ubbf8\uc9c0\" class=\"kb-img wp-image-5726\" srcset=\"https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-44-1-600x400.jpg 600w, https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-44-1-300x200.jpg 300w, https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-44-1-768x512.jpg 768w, https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-44-1-18x12.jpg 18w, https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-44-1.jpg 1200w\" sizes=\"(max-width: 600px) 100vw, 600px\" \/><\/figure><\/div>\n\n\n\n<p>\ub9ac\ud3ec\ud2b8 \ub0b4\uc6a9\uc744 \uc694\uc57d\ud558\uba74, \uc2e4\ubb34\uc801\uc73c\ub85c \uc911\uc694\ud55c \ud0a4\uc6cc\ub4dc\ub294 \uc774 \uc138 \uac00\uc9c0\uc785\ub2c8\ub2e4.<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>MD5 \uc0ac\uc6a9 (High)<\/strong>\n<ul class=\"wp-block-list\">\n<li>\uc0ac\uc6a9\uc790\ub098 \ub370\uc774\ud130\uc5d0 \ub300\ud55c \ud574\uc2dc\/\ud1a0\ud070 \uc0dd\uc131\uc5d0 MD5\ub97c \uc0ac\uc6a9<\/li>\n\n\n\n<li>Bandit \uc785\uc7a5\uc5d0\uc11c\ub294 \uac70\uc758 \ubb34\uc870\uac74 <strong>High \uacbd\uace0<\/strong><\/li>\n\n\n\n<li>\ubcf4\uc548 \uc5c5\uacc4\uc5d0\uc11c\ub294 \uc624\ub798\uc804\uc5d0 \u201c\uc57d\ud55c \ud574\uc2dc\u201d\ub85c \ubd84\ub958\ub41c \uc0c1\ud0dc<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong><code>mark_safe<\/code> \uc0ac\uc6a9 (Medium)<\/strong>\n<ul class=\"wp-block-list\">\n<li>Django \ud15c\ud50c\ub9bf\uc5d0\uc11c \ubb38\uc790\uc5f4\uc744 <strong>\u201c\uc774\uac70\ub294 \uc548\uc804\ud558\ub2c8\uae4c \uc774\uc2a4\ucf00\uc774\ud504\ud558\uc9c0 \ub9c8\u201d<\/strong><br>\ub77c\uace0 \ud45c\uc2dc\ud558\ub294 \ud568\uc218<\/li>\n\n\n\n<li>\uc785\ub825 \ub370\uc774\ud130\uac00 \uc815\ub9d0 100% \uc2e0\ub8b0 \uac00\ub2a5\ud55c\uc9c0,<br>XSS \uc704\ud5d8\uc740 \uc5c6\ub294\uc9c0 \ubc18\ub4dc\uc2dc \ud655\uc778\ud574\uc57c \ud558\ub294 \ubd80\ubd84<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>f-string + raw SQL (Medium, \ub54c\ub85c\ub294 High\uae09)<\/strong>\n<ul class=\"wp-block-list\">\n<li>Python f-string\uc73c\ub85c SQL \ubb38\uc790\uc5f4\uc744 \uc9c1\uc811 \uc870\ub9bd\ud574 \uc4f0\ub294 \ud328\ud134<\/li>\n\n\n\n<li>\uc0ac\uc6a9\uc790 \uc785\ub825\uc774 \uc11e\uc774\ub294 \uc21c\uac04 \u2192 <strong>SQL \uc778\uc81d\uc158<\/strong> \uc704\ud5d8<\/li>\n\n\n\n<li>Django ORM \ub610\ub294 \ud30c\ub77c\ubbf8\ud130 \ubc14\uc778\ub529 \ubc29\uc2dd\uc73c\ub85c \ubc14\uafb8\ub294 \uac8c \uc6d0\uce59<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n\n\n\n<p>\uadf8\ub9ac\uace0 \ucd94\uac00\ub85c<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>urllib.request.urlopen<\/code> \u2192 B310 (\uc8fc\uc758 \ub300\uc0c1 \ud568\uc218)<\/li>\n\n\n\n<li>\uc774 \ubd80\ubd84\uc740 timeout\uc744 \ub123\uc5b4\uc11c \u201c\ub300\uae30 \ubb34\ud55c \ub8e8\ud504\u201d\ub958\uc758 \ubb38\uc81c\ub294 \uc904\uc600\uc9c0\ub9cc,<br>\uc5ec\uc804\ud788 <strong>URL \uc8fc\uccb4\/\uac80\uc99d\/\uc608\uc678\ucc98\ub9ac<\/strong> \ub4f1\uc744 \ud568\uaed8 \uace0\ub824\ud574\uc57c \ud558\ub294 \ud3ec\uc778\ud2b8\uc785\ub2c8\ub2e4.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">4. \u201c\uc9c0\uae08 \uc774 \uc0c1\ud0dc\uc5d0\uc11c \ub0b4\uac00 \ubb58 \ud558\uba74 \uc88b\uc744\uae4c?\u201d \u2013 \uc2e4\uc804 \uad00\uc810<\/h2>\n\n\n\n<p>\ud488\uc9c8 \ub9ac\ud3ec\ud2b8\ub97c \ud1a0\ub300\ub85c \uc2e4\ubb34\uc5d0\uc11c \uc790\uc8fc \uc4f0\ub294 <strong>\ucd94\ucc9c \ub300\uc751 \uc21c\uc11c<\/strong>\ub97c \uc815\ub9ac\ud574\ubcfc\uac8c\uc694.<\/p>\n\n\n\n<p>1\ufe0f\u20e3 <strong>\ub9ac\ud3ec\ud2b8 \uc804\uccb4\ub97c \u201c\uc720\ud615\ubcc4\ub85c\u201d \ub098\ub220\uc11c \ubcf8\ub2e4<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\uc2a4\ud0c0\uc77c\/\uad6c\ubb38 \ubb38\uc81c (flake8\uc758 F\/E\/W \ub2e4\uc218)<\/li>\n\n\n\n<li>\ubcf4\uc548 \ud575\uc2ec \uc774\uc288 (bandit High)<\/li>\n\n\n\n<li>\ubcf4\uc548 \uad00\ub828 \uc8fc\uc758\/\uad8c\uc7a5\uc0ac\ud56d (bandit Medium\/Low)<\/li>\n<\/ul>\n\n\n\n<p>2\ufe0f\u20e3 <strong>\ubcf4\uc548 High \uba3c\uc800 \ubcc4\ub3c4 \ube0c\ub79c\uce58\uc5d0\uc11c \ucc98\ub9ac \uacc4\ud68d \uc138\uc6b0\uae30<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>MD5 \u2192 SHA-256 \uad50\uccb4 \uc2dc\n<ul class=\"wp-block-list\">\n<li>\uae30\uc874 \ud1a0\ud070\/\ub370\uc774\ud130\uc640\uc758 \ud638\ud658\uc131 \ud655\uc778<\/li>\n\n\n\n<li>\uc678\ubd80 \uc2dc\uc2a4\ud15c\uacfc \uc5f0\ub3d9\ub418\uc5b4 \uc788\ub098 \uccb4\ud06c<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>\uc774\uac74 2\ud3b8\uc5d0\uc11c \uc790\uc138\ud788 \ub2e4\ub8f0 \uc608\uc815\uc785\ub2c8\ub2e4.<\/li>\n<\/ul>\n\n\n\n<p>3\ufe0f\u20e3 <strong>Medium \ub808\ubca8\uc5d0\uc11c \uc2e4\uc9c8\uc801\uc73c\ub85c \uc704\ud5d8\ud55c \uac83 \uace8\ub77c\ub0b4\uae30<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>mark_safe<\/code>\uac00 \uc815\ub9d0 \ud544\uc694\ud55c\uc9c0,<br>\uadf8 \uc55e\ub2e8\uc5d0\uc11c \ub370\uc774\ud130 \uc815\uc81c\/\uac80\uc99d\uc774 \ub418\uc5b4 \uc788\ub294\uc9c0 \ud655\uc778<\/li>\n\n\n\n<li>raw SQL \ucabd\uc740\n<ul class=\"wp-block-list\">\n<li>\ud30c\ub77c\ubbf8\ud130 \ubc14\uc778\ub529\uc774 \uc774\ubbf8 \uc801\uc6a9\ub418\uc5b4 \uc788\ub294\uc9c0<\/li>\n\n\n\n<li>ORM\uc73c\ub85c \ubc14\uafb8\uae30 \uc26c\uc6b4 \ucffc\ub9ac\uc778\uc9c0\ubd80\ud130 \ub098\ub220\ubcf4\uae30<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p>4\ufe0f\u20e3 <strong>Low \/ \uc2a4\ud0c0\uc77c \ubb38\uc81c\ub294 \uc790\ub3d9\ud654 \ub3c4\uad6c\ub85c \ubb36\uc5b4\uc11c \ucc98\ub9ac<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\uc0ac\uc6a9\ud558\uc9c0 \uc54a\ub294 import \uc815\ub9ac<\/li>\n\n\n\n<li>\ud3ec\ub9e4\ud130(black)\ub85c \uc2a4\ud0c0\uc77c \uc815\ub9ac<\/li>\n\n\n\n<li>\ud544\uc694\ud558\uba74 autoflake \uac19\uc740 \ub3c4\uad6c \uc0ac\uc6a9<\/li>\n<\/ul>\n\n\n\n<p>5\ufe0f\u20e3 <strong>\uac01 \ub2e8\uacc4\ub294 \ud56d\uc0c1 \u201c\ube0c\ub79c\uce58 \ucabc\uac1c\uae30 + \uccb4\ud06c \ub2e4\uc2dc \ub3cc\ub9ac\uae30\u201d \ud328\ud134\uc73c\ub85c<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u306f\u3044\uff1a\n<ul class=\"wp-block-list\">\n<li><code>quality\/security-md5-change<\/code> \ube0c\ub79c\uce58<\/li>\n\n\n\n<li><code>quality\/cleanup-unused-imports<\/code> \ube0c\ub79c\uce58 \ub4f1<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>\uc774\ub807\uac8c \ud558\uba74 \ub098\uc911\uc5d0 \ubb38\uc81c\uac00 \uc0dd\uaca8\ub3c4<br>\u201c\uc5b4\ub290 \ubcc0\uacbd \ub54c\ubb38\uc5d0 \uadf8\ub7f0\uc9c0\u201d \ucc3e\uae30 \uc26c\uc6cc\uc9d1\ub2c8\ub2e4.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">5. \uc6a9\uc5b4 \uc815\ub9ac<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>\ucf54\ub4dc \ud488\uc9c8 \ub9ac\ud3ec\ud2b8<\/strong><br>flake8, bandit \uac19\uc740 \ub3c4\uad6c\ub97c \uc2e4\ud589\ud588\uc744 \ub54c \ub098\uc624\ub294<br>\uc5d0\ub7ec\/\uacbd\uace0\/\uc815\ubcf4 \uba54\uc2dc\uc9c0\ub97c \ud1b5\uce6d\ud574\uc11c \uc774\ub807\uac8c \ubd80\ub97c \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/li>\n\n\n\n<li><strong>flake8<\/strong><br>Python \ucf54\ub4dc\uc758 \uc2a4\ud0c0\uc77c\uacfc \uac04\ub2e8\ud55c \uc5d0\ub7ec\ub97c \uac80\uc0ac\ud558\ub294 \ub3c4\uad6c.<br>\uc608: \uc815\uc758 \uc548 \ub41c \ubcc0\uc218, \uc0ac\uc6a9\ud558\uc9c0 \uc54a\ub294 import, \ucf54\ub4dc \uc2a4\ud0c0\uc77c \uc704\ubc18 \ub4f1.<\/li>\n\n\n\n<li><strong>bandit<\/strong><br>Python \ucf54\ub4dc\ub97c \ubcf4\uc548 \uad00\uc810\uc5d0\uc11c \ubd84\uc11d\ud558\ub294 \ub3c4\uad6c.<br>\uc57d\ud55c \ud574\uc2dc(MD5), \uc704\ud5d8\ud55c \ud568\uc218 \uc0ac\uc6a9, SQL \uc778\uc81d\uc158 \uac00\ub2a5\uc131 \ub4f1\uc744 \ucc3e\uc544\ub0c5\ub2c8\ub2e4.<\/li>\n\n\n\n<li><strong>High \/ Medium \/ Low (severity)<\/strong><br>bandit\uac00 \uacbd\uace0\uc758 \uc2ec\uac01\ub3c4\ub97c \ud45c\uc2dc\ud558\ub294 \ub2e8\uacc4.<br>High\ub294 \uac00\ub2a5\ud55c \ube68\ub9ac \ub300\uc751\ud574\uc57c \ud560 \ubcf4\uc548 \uc774\uc288,<br>Medium\uc740 \uc0c1\ud669\uc5d0 \ub530\ub77c \uc704\ud5d8\ud574\uc9c8 \uc218 \uc788\ub294 \ucf54\ub4dc,<br>Low\ub294 \uad8c\uc7a5\/\uc8fc\uc758 \uc218\uc900.<\/li>\n\n\n\n<li><strong>SQL \uc778\uc81d\uc158<\/strong><br>\uc0ac\uc6a9\uc790\uac00 \uc785\ub825\ud55c \uac12\uc774 SQL \ucffc\ub9ac \ubb38\uc790\uc5f4\uc5d0 \uadf8\ub300\ub85c \ub07c\uc6cc\uc838\uc11c<br>\uc758\ub3c4\uce58 \uc54a\uc740 \ucffc\ub9ac \uc2e4\ud589\uc774 \uac00\ub2a5\ud55c \ucde8\uc57d\uc810.<\/li>\n\n\n\n<li><strong>XSS (Cross-Site Scripting)<\/strong><br>\uc545\uc131 \uc2a4\ud06c\ub9bd\ud2b8(\uc8fc\ub85c JavaScript)\uac00 \uc6f9 \ud398\uc774\uc9c0\ub97c \ud1b5\ud574 \uc0ac\uc6a9\uc790 \ube0c\ub77c\uc6b0\uc800\uc5d0\uc11c \uc2e4\ud589\ub418\ub294 \uacf5\uaca9.<\/li>\n<\/ul>","protected":false},"excerpt":{"rendered":"<p>\uc2dc\uc2a4\ud15c\uc744 \uac1c\ubc1c\ud574\ub450\uace0 \u201c\uac80\uc0ac \ub3cc\ub824\ubd24\ub354\ub2c8 \uc5d0\ub7ec\uac00 \ud55c\uac00\ub4dd\u2026\u201d \uc774 \uc0c1\ud669\uc740 \uac1c\ubc1c\uc744 \uc2dc\uc791\ud574&#8230;<\/p>","protected":false},"author":3,"featured_media":5721,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_kad_blocks_custom_css":"","_kad_blocks_head_custom_js":"","_kad_blocks_body_custom_js":"","_kad_blocks_footer_custom_js":"","_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"_kad_post_classname":"","footnotes":""},"categories":[15],"tags":[1181,1184,1179,1178,1180,1105,1185,1183,1114,1182,1177],"class_list":["post-5586","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-it-jewel","tag-code-quality-report","tag-django-","tag-flake8-bandit","tag-mark_safe","tag-md5-","tag-pre-commit","tag-python--","tag-sql-","tag-1114","tag-1182","tag-1177"],"taxonomy_info":{"category":[{"value":15,"label":"D \ubcf4\ubb3c\ucc3d\uace0(Jewel)"}],"post_tag":[{"value":1181,"label":"code quality report"},{"value":1184,"label":"Django \ubcf4\uc548"},{"value":1179,"label":"flake8 bandit"},{"value":1178,"label":"mark_safe"},{"value":1180,"label":"MD5 \uacbd\uace0"},{"value":1105,"label":"pre-commit"},{"value":1185,"label":"Python \ucf54\ub4dc \ud488\uc9c8"},{"value":1183,"label":"SQL \uc778\uc81d\uc158"},{"value":1114,"label":"\ubcf4\uc548 \uc810\uac80"},{"value":1182,"label":"\ucf54\ub4dc \ub9ac\ubdf0"},{"value":1177,"label":"\ucf54\ub4dc \ud488\uc9c8 \ub9ac\ud3ec\ud2b8"}]},"featured_image_src_large":["https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-41.png",512,346,false],"author_info":{"display_name":"TERE","author_link":"https:\/\/secondlife.lol\/ja\/author\/tere\/"},"comment_info":0,"category_info":[{"term_id":15,"name":"D \ubcf4\ubb3c\ucc3d\uace0(Jewel)","slug":"it-jewel","term_group":0,"term_taxonomy_id":15,"taxonomy":"category","description":"","parent":0,"count":55,"filter":"raw","cat_ID":15,"category_count":55,"category_description":"","cat_name":"D \ubcf4\ubb3c\ucc3d\uace0(Jewel)","category_nicename":"it-jewel","category_parent":0}],"tag_info":[{"term_id":1181,"name":"code quality report","slug":"code-quality-report","term_group":0,"term_taxonomy_id":1181,"taxonomy":"post_tag","description":"","parent":0,"count":1,"filter":"raw"},{"term_id":1184,"name":"Django \ubcf4\uc548","slug":"django-%eb%b3%b4%ec%95%88","term_group":0,"term_taxonomy_id":1184,"taxonomy":"post_tag","description":"","parent":0,"count":2,"filter":"raw"},{"term_id":1179,"name":"flake8 bandit","slug":"flake8-bandit","term_group":0,"term_taxonomy_id":1178,"taxonomy":"post_tag","description":"","parent":0,"count":1,"filter":"raw"},{"term_id":1178,"name":"mark_safe","slug":"mark_safe","term_group":0,"term_taxonomy_id":1179,"taxonomy":"post_tag","description":"","parent":0,"count":1,"filter":"raw"},{"term_id":1180,"name":"MD5 \uacbd\uace0","slug":"md5-%ea%b2%bd%ea%b3%a0","term_group":0,"term_taxonomy_id":1180,"taxonomy":"post_tag","description":"","parent":0,"count":1,"filter":"raw"},{"term_id":1105,"name":"pre-commit","slug":"pre-commit","term_group":0,"term_taxonomy_id":1105,"taxonomy":"post_tag","description":"","parent":0,"count":4,"filter":"raw"},{"term_id":1185,"name":"Python \ucf54\ub4dc \ud488\uc9c8","slug":"python-%ec%bd%94%eb%93%9c-%ed%92%88%ec%a7%88","term_group":0,"term_taxonomy_id":1185,"taxonomy":"post_tag","description":"","parent":0,"count":1,"filter":"raw"},{"term_id":1183,"name":"SQL \uc778\uc81d\uc158","slug":"sql-%ec%9d%b8%ec%a0%9d%ec%85%98","term_group":0,"term_taxonomy_id":1183,"taxonomy":"post_tag","description":"","parent":0,"count":1,"filter":"raw"},{"term_id":1114,"name":"\ubcf4\uc548 \uc810\uac80","slug":"%eb%b3%b4%ec%95%88-%ec%a0%90%ea%b2%80","term_group":0,"term_taxonomy_id":1114,"taxonomy":"post_tag","description":"","parent":0,"count":3,"filter":"raw"},{"term_id":1182,"name":"\ucf54\ub4dc \ub9ac\ubdf0","slug":"%ec%bd%94%eb%93%9c-%eb%a6%ac%eb%b7%b0","term_group":0,"term_taxonomy_id":1182,"taxonomy":"post_tag","description":"","parent":0,"count":2,"filter":"raw"},{"term_id":1177,"name":"\ucf54\ub4dc \ud488\uc9c8 \ub9ac\ud3ec\ud2b8","slug":"%ec%bd%94%eb%93%9c-%ed%92%88%ec%a7%88-%eb%a6%ac%ed%8f%ac%ed%8a%b8","term_group":0,"term_taxonomy_id":1177,"taxonomy":"post_tag","description":"","parent":0,"count":2,"filter":"raw"}],"_links":{"self":[{"href":"https:\/\/secondlife.lol\/ja\/wp-json\/wp\/v2\/posts\/5586","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/secondlife.lol\/ja\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/secondlife.lol\/ja\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/secondlife.lol\/ja\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/secondlife.lol\/ja\/wp-json\/wp\/v2\/comments?post=5586"}],"version-history":[{"count":6,"href":"https:\/\/secondlife.lol\/ja\/wp-json\/wp\/v2\/posts\/5586\/revisions"}],"predecessor-version":[{"id":6076,"href":"https:\/\/secondlife.lol\/ja\/wp-json\/wp\/v2\/posts\/5586\/revisions\/6076"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/secondlife.lol\/ja\/wp-json\/wp\/v2\/media\/5721"}],"wp:attachment":[{"href":"https:\/\/secondlife.lol\/ja\/wp-json\/wp\/v2\/media?parent=5586"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/secondlife.lol\/ja\/wp-json\/wp\/v2\/categories?post=5586"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/secondlife.lol\/ja\/wp-json\/wp\/v2\/tags?post=5586"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}