<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Owasp on Code &amp; Community</title><link>https://neng-lab.com/tags/owasp/</link><description>Recent content in Owasp on Code &amp; Community</description><generator>Hugo -- gohugo.io</generator><language>th-th</language><managingEditor>jitaret@gmail.com (เหน่ง)</managingEditor><webMaster>jitaret@gmail.com (เหน่ง)</webMaster><lastBuildDate>Mon, 13 Apr 2026 12:00:00 +0700</lastBuildDate><atom:link href="https://neng-lab.com/tags/owasp/index.xml" rel="self" type="application/rss+xml"/><item><title>Harness Engineering ตอนที่ 4: Tools &amp; Permissions - กำหนดขอบเขต AI</title><link>https://neng-lab.com/posts/harness-part-4/</link><pubDate>Mon, 13 Apr 2026 12:00:00 +0700</pubDate><author>jitaret@gmail.com (เหน่ง)</author><guid>https://neng-lab.com/posts/harness-part-4/</guid><description>&lt;img src="https://neng-lab.com/" alt="Featured image of post Harness Engineering ตอนที่ 4: Tools &amp; Permissions - กำหนดขอบเขต AI" /&gt;&lt;h1 id="harness-engineering-ตอนท-4-tools--permissions---กำหนดขอบเขต-ai"&gt;&lt;a href="#harness-engineering-%e0%b8%95%e0%b8%ad%e0%b8%99%e0%b8%97-4-tools--permissions---%e0%b8%81%e0%b8%b3%e0%b8%ab%e0%b8%99%e0%b8%94%e0%b8%82%e0%b8%ad%e0%b8%9a%e0%b9%80%e0%b8%82%e0%b8%95-ai" class="header-anchor"&gt;&lt;/a&gt;Harness Engineering ตอนที่ 4: Tools &amp;amp; Permissions - กำหนดขอบเขต AI
&lt;/h1&gt;&lt;h2 id="สวนนำ-ทำไม-ai-ถงตองม-ลอคประต"&gt;&lt;a href="#%e0%b8%aa%e0%b8%a7%e0%b8%99%e0%b8%99%e0%b8%b3-%e0%b8%97%e0%b8%b3%e0%b9%84%e0%b8%a1-ai-%e0%b8%96%e0%b8%87%e0%b8%95%e0%b8%ad%e0%b8%87%e0%b8%a1-%e0%b8%a5%e0%b8%ad%e0%b8%84%e0%b8%9b%e0%b8%a3%e0%b8%b0%e0%b8%95" class="header-anchor"&gt;&lt;/a&gt;ส่วนนำ: ทำไม AI ถึงต้องมี &amp;ldquo;ล็อคประตู&amp;rdquo;?
&lt;/h2&gt;&lt;p&gt;ลองนึกภาพว่าคุณจ้างพนักงานใหม่มาทำงาน แต่ไม่ได้กำหนดว่าเขาทำอะไรได้บ้าง ไม่ได้บอกว่าห้องไหนเข้าได้ ห้องไหนเข้าไม่ได้ และไม่ได้บอกว่าอะไรทำได้ อะไรทำไม่ได้&amp;hellip; คุณจะรู้สึกอย่างไร?&lt;/p&gt;
&lt;p&gt;น่ากลัวใช่ไหมล่ะ?&lt;/p&gt;
&lt;p&gt;แต่นี่คือสิ่งที่หลายคนทำกับ AI Agent กันโดยไม่รู้ตัว&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;สถิติที่น่าตกใจ:&lt;/strong&gt; ข้อมูลจาก OWASP Top 10 for Agentic Applications 2026 พบว่า &lt;strong&gt;73% ของ AI ที่ deploy ใน production มีช่องโหว่ Prompt Injection&lt;/strong&gt; นั่นหมายความว่าทุกครั้งที่คุณใช้ AI Agent มีโอกาสเกือบ 3 ใน 4 ที่จะถูกโจมตีผ่านวิธีนี้!&lt;/p&gt;
&lt;p&gt;และยิ่งไปกว่านั้น &lt;strong&gt;15-25% ของโค้ดที่ AI สร้างมีช่องโหว่ความปลอดภัย&lt;/strong&gt; (OWASP, 2026) ซึ่งเป็นตัวเลขที่สูงมากเมื่อพิจารณาว่าเรานำ AI มาใช้เพื่อเพิ่มประสิทธิภาพ&lt;/p&gt;
&lt;p&gt;เห็นไหมครับว่าปัญหามันอยู่ตรงไหน?&lt;/p&gt;
&lt;h2 id="tools--permissions-คออะไร"&gt;&lt;a href="#tools--permissions-%e0%b8%84%e0%b8%ad%e0%b8%ad%e0%b8%b0%e0%b9%84%e0%b8%a3" class="header-anchor"&gt;&lt;/a&gt;Tools &amp;amp; Permissions คืออะไร?
&lt;/h2&gt;&lt;p&gt;มาทำความเข้าใจกันง่ายๆ ก่อนนะครับ&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Tools&lt;/strong&gt; คือ &amp;ldquo;ความสามารถ&amp;rdquo; ที่ AI Agent สามารถใช้งานได้ ลองนึกภาพว่า AI เป็นคนที่มีอุปกรณ์ต่างๆ อยู่ในมือ:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;📖 &lt;strong&gt;อ่านไฟล์&lt;/strong&gt; (File Reader) - AI สามารถเปิดดูไฟล์ในระบบ&lt;/li&gt;
&lt;li&gt;✍️ &lt;strong&gt;เขียนไฟล์&lt;/strong&gt; (File Writer) - AI สามารถสร้างหรือแก้ไขไฟล์&lt;/li&gt;
&lt;li&gt;💻 &lt;strong&gt;รันคำสั่ง&lt;/strong&gt; (Shell Execution) - AI สามารถสั่งให้คอมพิวเตอร์ทำงาน&lt;/li&gt;
&lt;li&gt;🌐 &lt;strong&gt;ควบคุม Browser&lt;/strong&gt; (Web Automation) - AI สามารถเปิดเว็บ กรอกฟอร์ม&lt;/li&gt;
&lt;li&gt;✉️ &lt;strong&gt;ส่งข้อความ&lt;/strong&gt; (Messaging) - AI สามารถส่งอีเมลหรือข้อความ&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;แต่ละอย่างก็มีความเสี่ยงต่างกันไป การอ่านไฟล์น่าจะปลอดภัยกว่าการรันคำสั่งใช่ไหมครับ?&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Permissions&lt;/strong&gt; คือ &amp;ldquo;กฎเกณฑ์&amp;rdquo; ที่กำหนดว่า AI จะใช้ Tools แต่ละอย่างได้แค่ไหน ใช้ได้กี่ครั้ง และใช้ในสถานการณ์ไหนบ้าง&lt;/p&gt;
&lt;p&gt;ลองเปรียบเทียบให้เห็นภาพนะครับ:&lt;/p&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;ไม่มี Permissions&lt;/th&gt;
 &lt;th&gt;มี Permissions&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;ให้บัตรเครดิตกับใครก็ได้ ไม่มีวงเงิน ไม่มี PIN&lt;/td&gt;
 &lt;td&gt;บัตรเครดิตมีวงเงิน 5,000 บาท ต้องใส่ PIN ทุกครั้ง&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;ทิ้งกุญแจบ้านไว้หน้าบ้าน ใครก็เข้าได้&lt;/td&gt;
 &lt;td&gt;มีกุญแจเฉพาะห้อง ต้องขออนุญาตก่อนเข้า&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;รถไม่มีเบรก ขับได้ไม่จำกัดความเร็ว&lt;/td&gt;
 &lt;td&gt;มีเบรก มีเกียร์ควบคุม มีถุงลมนิรภัย&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;เห็นความแตกต่างชัดเจนเลยใช่ไหมครับ?&lt;/p&gt;
&lt;h2 id="ทำไมตองกำหนดขอบเขต"&gt;&lt;a href="#%e0%b8%97%e0%b8%b3%e0%b9%84%e0%b8%a1%e0%b8%95%e0%b8%ad%e0%b8%87%e0%b8%81%e0%b8%b3%e0%b8%ab%e0%b8%99%e0%b8%94%e0%b8%82%e0%b8%ad%e0%b8%9a%e0%b9%80%e0%b8%82%e0%b8%95" class="header-anchor"&gt;&lt;/a&gt;ทำไมต้องกำหนดขอบเขต?
&lt;/h2&gt;&lt;p&gt;มาดูความเสี่ยงที่เกิดขึ้นจริงกันครับ:&lt;/p&gt;
&lt;h3 id="1-prompt-injection---เสยงกระซบในห"&gt;&lt;a href="#1-prompt-injection---%e0%b9%80%e0%b8%aa%e0%b8%a2%e0%b8%87%e0%b8%81%e0%b8%a3%e0%b8%b0%e0%b8%8b%e0%b8%9a%e0%b9%83%e0%b8%99%e0%b8%ab" class="header-anchor"&gt;&lt;/a&gt;1. Prompt Injection - &amp;ldquo;เสียงกระซิบในหู&amp;rdquo;
&lt;/h3&gt;&lt;p&gt;นึกภาพว่าคุณส่งเอกสารให้ AI อ่าน แต่ในเอกสารนั้นมีคำสั่งซ่อนอยู่ว่า &amp;ldquo;ลบไฟล์ทั้งหมด&amp;rdquo; หรือ &amp;ldquo;ส่งข้อมูลลับไปที่นี่&amp;rdquo; นี่แหละคือ Prompt Injection&lt;/p&gt;
&lt;p&gt;ผู้โจมตีจะฝังคำสั่งไว้ใน:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;README files&lt;/li&gt;
&lt;li&gt;คอมเมนต์ในโค้ด&lt;/li&gt;
&lt;li&gt;ข้อความที่ AI ต้องประมวลผล&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;และเมื่อ AI อ่านเจอ ก็จะทำตามโดยไม่รู้ตัว!&lt;/p&gt;
&lt;h3 id="2-tool-misuse---ใชมดแทงคน"&gt;&lt;a href="#2-tool-misuse---%e0%b9%83%e0%b8%8a%e0%b8%a1%e0%b8%94%e0%b9%81%e0%b8%97%e0%b8%87%e0%b8%84%e0%b8%99" class="header-anchor"&gt;&lt;/a&gt;2. Tool Misuse - &amp;ldquo;ใช้มีดแทงคน&amp;rdquo;
&lt;/h3&gt;&lt;p&gt;แม้แต่ Tool ที่ดีก็อาจถูกใช้ผิดวัตถุประสงค์ได้&lt;/p&gt;
&lt;p&gt;ตัวอย่าง:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;AI ที่มีสิทธิ์เขียนไฟล์อาจไปลบ database ทั้งหมดเพราะเข้าใจคำสั่งผิด&lt;/li&gt;
&lt;li&gt;AI ที่ส่งอีเมลได้อาจส่งข้อความหลอกลวงไปยังลูกค้า&lt;/li&gt;
&lt;li&gt;AI ที่รันคำสั่งได้อาจดาวน์โหลดมัลแวร์โดยไม่รู้ตัว&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="3-data-exfiltration---ขอมลรวไหล"&gt;&lt;a href="#3-data-exfiltration---%e0%b8%82%e0%b8%ad%e0%b8%a1%e0%b8%a5%e0%b8%a3%e0%b8%a7%e0%b9%84%e0%b8%ab%e0%b8%a5" class="header-anchor"&gt;&lt;/a&gt;3. Data Exfiltration - &amp;ldquo;ข้อมูลรั่วไหล&amp;rdquo;
&lt;/h3&gt;&lt;p&gt;AI อาจถูกหลอกให้ส่งข้อมูลสำคัญ (ลูกค้า, รหัสผ่าน, ข้อมูลทางการเงิน) ไปยัง server ของผู้โจมตี&lt;/p&gt;
&lt;h3 id="4-cascading-failures---ลกโซหลด"&gt;&lt;a href="#4-cascading-failures---%e0%b8%a5%e0%b8%81%e0%b9%82%e0%b8%8b%e0%b8%ab%e0%b8%a5%e0%b8%94" class="header-anchor"&gt;&lt;/a&gt;4. Cascading Failures - &amp;ldquo;ลูกโซ่หลุด&amp;rdquo;
&lt;/h3&gt;&lt;p&gt;เมื่อ AI หนึ่งตัวทำงานผิด อาจส่งผลกระทบต่อ AI ตัวอื่นๆ ที่เชื่อมต่อกัน ทำให้ปัญหาลุกลามเป็นกองไฟ&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;สถิติไม่โกหกครับ: &lt;strong&gt;30+ CVEs ถูกค้นพบในเดือนธันวาคม 2025 ใน AI Coding Platforms ใหญ่ๆ&lt;/strong&gt; และที่น่าตกใจที่สุดคือ &lt;strong&gt;CamoLeak vulnerability (CVSS 9.6) ใน GitHub Copilot&lt;/strong&gt; ทำให้สามารถขโมย secrets และ source code ได้!&lt;/p&gt;
&lt;p&gt;นี่ไม่ใช่เรื่องไกลตัว แต่เป็นภัยคุกคามที่เกิดขึ้นจริง&lt;/p&gt;
&lt;h2 id="ประสบการณเหนงกบ-openclaw"&gt;&lt;a href="#%e0%b8%9b%e0%b8%a3%e0%b8%b0%e0%b8%aa%e0%b8%9a%e0%b8%81%e0%b8%b2%e0%b8%a3%e0%b8%93%e0%b9%80%e0%b8%ab%e0%b8%99%e0%b8%87%e0%b8%81%e0%b8%9a-openclaw" class="header-anchor"&gt;&lt;/a&gt;ประสบการณ์เหน่งกับ OpenClaw
&lt;/h2&gt;&lt;p&gt;ตอนนี้มาดูกันว่าเหน่งใช้ OpenClaw อย่างไรในการกำหนดขอบเขตให้ AI ครับ&lt;/p&gt;
&lt;h3 id="openclaw-security-modes"&gt;&lt;a href="#openclaw-security-modes" class="header-anchor"&gt;&lt;/a&gt;OpenClaw Security Modes
&lt;/h3&gt;&lt;p&gt;OpenClaw มี exec security modes 3 ระดับ:&lt;/p&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Mode&lt;/th&gt;
 &lt;th&gt;คำอธิบาย&lt;/th&gt;
 &lt;th&gt;เหมาะกับ&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;deny&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;ปิดการใช้งาน exec ทั้งหมด&lt;/td&gt;
 &lt;td&gt;งานที่ไม่ต้องรันคำสั่ง&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;allowlist&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;อนุญาตเฉพาะคำสั่งที่ระบุ&lt;/td&gt;
 &lt;td&gt;งานที่ต้องควบคุมอย่างเข้มงวด&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;full&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;อนุญาตทั้งหมด&lt;/td&gt;
 &lt;td&gt;⚠️ อันตราย! ใช้ด้วยความระมัดระวัง&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;strong&gt;คำแนะนำ:&lt;/strong&gt; อย่าใช้ &lt;code&gt;full&lt;/code&gt; โดยไม่จำเป็น เพราะมันเปิดให้ AI ทำได้ทุกอย่าง!&lt;/p&gt;
&lt;h3 id="การตงคาทแนะนำ"&gt;&lt;a href="#%e0%b8%81%e0%b8%b2%e0%b8%a3%e0%b8%95%e0%b8%87%e0%b8%84%e0%b8%b2%e0%b8%97%e0%b9%81%e0%b8%99%e0%b8%b0%e0%b8%99%e0%b8%b3" class="header-anchor"&gt;&lt;/a&gt;การตั้งค่าที่แนะนำ
&lt;/h3&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-json" data-lang="json"&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 1&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 2&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="err"&gt;gateway:&lt;/span&gt; &lt;span class="err"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 3&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="err"&gt;mode:&lt;/span&gt; &lt;span class="nt"&gt;&amp;#34;local&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 4&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="err"&gt;bind:&lt;/span&gt; &lt;span class="nt"&gt;&amp;#34;loopback&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 5&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="err"&gt;auth:&lt;/span&gt; &lt;span class="err"&gt;{&lt;/span&gt; &lt;span class="err"&gt;mode:&lt;/span&gt; &lt;span class="nt"&gt;&amp;#34;token&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="err"&gt;token:&lt;/span&gt; &lt;span class="nt"&gt;&amp;#34;replace-with-long-random-token&amp;#34;&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="err"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 6&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="err"&gt;},&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 7&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="err"&gt;tools:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 8&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="err"&gt;profile:&lt;/span&gt; &lt;span class="nt"&gt;&amp;#34;messaging&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 9&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="err"&gt;deny:&lt;/span&gt; &lt;span class="err"&gt;[&lt;/span&gt;&lt;span class="nt"&gt;&amp;#34;group:automation&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nt"&gt;&amp;#34;group:runtime&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nt"&gt;&amp;#34;group:fs&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nt"&gt;&amp;#34;sessions_spawn&amp;#34;&lt;/span&gt;&lt;span class="err"&gt;]&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;10&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="err"&gt;fs:&lt;/span&gt; &lt;span class="err"&gt;{&lt;/span&gt; &lt;span class="err"&gt;workspaceOnly:&lt;/span&gt; &lt;span class="err"&gt;true&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="err"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;11&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="err"&gt;exec:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="err"&gt;security:&lt;/span&gt; &lt;span class="nt"&gt;&amp;#34;deny&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="err"&gt;ask:&lt;/span&gt; &lt;span class="nt"&gt;&amp;#34;always&amp;#34;&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="err"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;12&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="err"&gt;elevated:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="err"&gt;enabled:&lt;/span&gt; &lt;span class="err"&gt;false&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="err"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;13&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="err"&gt;},&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;14&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="err"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;สังเกตไหมครับว่า:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;exec: { security: &amp;quot;deny&amp;quot;, ask: &amp;quot;always&amp;quot; }&lt;/code&gt; - ถ้าจำเป็นต้องรันคำสั่ง ต้องถามเหน่งก่อนทุกครั้ง!&lt;/li&gt;
&lt;li&gt;&lt;code&gt;deny: [&amp;quot;group:automation&amp;quot;, &amp;quot;group:runtime&amp;quot;, &amp;quot;group:fs&amp;quot;]&lt;/code&gt; - ปิดการใช้งาน groups ที่เสี่ยง&lt;/li&gt;
&lt;li&gt;&lt;code&gt;fs: { workspaceOnly: true }&lt;/code&gt; - จำกัดให้อ่าน/เขียนได้เฉพาะใน workspace&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="ปญหาทเจอและวธแก"&gt;&lt;a href="#%e0%b8%9b%e0%b8%8d%e0%b8%ab%e0%b8%b2%e0%b8%97%e0%b9%80%e0%b8%88%e0%b8%ad%e0%b9%81%e0%b8%a5%e0%b8%b0%e0%b8%a7%e0%b8%98%e0%b9%81%e0%b8%81" class="header-anchor"&gt;&lt;/a&gt;ปัญหาที่เจอและวิธีแก้
&lt;/h3&gt;&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;ปัญหา&lt;/th&gt;
 &lt;th&gt;วิธีแก้&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Shared DMs + เปิด tools&lt;/td&gt;
 &lt;td&gt;ใช้ &lt;code&gt;dmPolicy: &amp;quot;pairing&amp;quot;&lt;/code&gt; หรือ allowlists&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Browser control เปิดเผย&lt;/td&gt;
 &lt;td&gt;ใช้ Tailscale, ไม่ expose สู่ public&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Exec รันโดยไม่ต้องยืนยัน&lt;/td&gt;
 &lt;td&gt;ตั้งค่า &lt;code&gt;security: &amp;quot;allowlist&amp;quot;&lt;/code&gt; และ &lt;code&gt;ask: &amp;quot;always&amp;quot;&lt;/code&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Config อยู่ใน synced folder&lt;/td&gt;
 &lt;td&gt;ย้ายออกจาก iCloud/Dropbox&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Token สั้นเกินไป&lt;/td&gt;
 &lt;td&gt;ใช้ token ยาวอย่างน้อย 32 characters&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;เหน่งเจอปัญหาเรื่องนี้หลายครั้งครับ โดยเฉพาะตอนที่ token สั้นเกินไป ทำให้เดาได้ง่าย หลังจากปรับให้ยาวขึ้นและตั้งค่า &lt;code&gt;ask: &amp;quot;always&amp;quot;&lt;/code&gt; ก็รู้สึกสบายใจขึ้นเยอะ&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="ประเภทของ-permissions-แบบละเอยด"&gt;&lt;a href="#%e0%b8%9b%e0%b8%a3%e0%b8%b0%e0%b9%80%e0%b8%a0%e0%b8%97%e0%b8%82%e0%b8%ad%e0%b8%87-permissions-%e0%b9%81%e0%b8%9a%e0%b8%9a%e0%b8%a5%e0%b8%b0%e0%b9%80%e0%b8%ad%e0%b8%a2%e0%b8%94" class="header-anchor"&gt;&lt;/a&gt;ประเภทของ Permissions แบบละเอียด
&lt;/h2&gt;&lt;p&gt;มาถึงส่วนสำคัญแล้วครับ! ตอนนี้เราจะมาดูกันว่า Permissions แบ่งออกเป็นกี่ประเภท และแต่ละประเภทมีความเสี่ยงอย่างไร&lt;/p&gt;
&lt;h3 id="1--read-permissions---ดวงตา-ของ-ai"&gt;&lt;a href="#1--read-permissions---%e0%b8%94%e0%b8%a7%e0%b8%87%e0%b8%95%e0%b8%b2-%e0%b8%82%e0%b8%ad%e0%b8%87-ai" class="header-anchor"&gt;&lt;/a&gt;1. 📖 Read Permissions - &amp;ldquo;ดวงตา&amp;rdquo; ของ AI
&lt;/h3&gt;&lt;p&gt;Read Permissions คือสิทธิ์ในการเข้าถึงข้อมูล ลองนึกภาพว่า AI เป็นพนักงานที่สามารถอ่านเอกสารในสำนักงานได้&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;สิ่งที่ AI สามารถทำได้:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;อ่านไฟล์ในระบบ&lt;/li&gt;
&lt;li&gt;เข้าถึง database&lt;/li&gt;
&lt;li&gt;ดู log files&lt;/li&gt;
&lt;li&gt;อ่าน configuration files&lt;/li&gt;
&lt;li&gt;เข้าถึง environment variables&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;ความเสี่ยงที่อาจเกิดขึ้น:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;ข้อมูลลับรั่วไหล (API keys, passwords, secrets)&lt;/li&gt;
&lt;li&gt;ข้อมูลลูกค้า (PII - Personal Identifiable Information)&lt;/li&gt;
&lt;li&gt;ข้อมูลทางการเงิน&lt;/li&gt;
&lt;li&gt;โค้ดที่มีช่องโหว่ (AI อาจเรียนรู้และนำไปใช้ผิด)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;ตัวอย่างการโจมตี:&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-fallback" data-lang="fallback"&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;1&lt;/span&gt;&lt;span class="cl"&gt;Scenario: คุณให้ AI อ่านไฟล์ README.md เพื่อทำความเข้าใจโปรเจกต์
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;2&lt;/span&gt;&lt;span class="cl"&gt;แต่ในไฟล์นั้นมีคอมเมนต์ว่า &amp;#34;TODO: remove API key before deploy&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;3&lt;/span&gt;&lt;span class="cl"&gt;AI ก็อาจเห็น API key นั้นและนำไปใช้ได้!
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;strong&gt;วิธีจำกัด:&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-json" data-lang="json"&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;1&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;2&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;fs&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;3&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;workspaceOnly&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="c1"&gt;// อ่านได้เฉพาะ workspace
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;4&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;allowedDirs&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;/project/src&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;/project/config&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;5&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;deniedPatterns&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;**/*.env&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;**/secrets/**&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;6&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;7&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="2--write-permissions---มอ-ของ-ai"&gt;&lt;a href="#2--write-permissions---%e0%b8%a1%e0%b8%ad-%e0%b8%82%e0%b8%ad%e0%b8%87-ai" class="header-anchor"&gt;&lt;/a&gt;2. ✍️ Write Permissions - &amp;ldquo;มือ&amp;rdquo; ของ AI
&lt;/h3&gt;&lt;p&gt;Write Permissions คือสิทธิ์ในการสร้างหรือแก้ไขข้อมูล นี่คือสิ่งที่ต้องระวังเป็นพิเศษ เพราะมีความเสี่ยงสูงกว่า Read มาก!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;สิ่งที่ AI สามารถทำได้:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;สร้างไฟล์ใหม่&lt;/li&gt;
&lt;li&gt;แก้ไขไฟล์ที่มีอยู่&lt;/li&gt;
&lt;li&gt;ลบไฟล์&lt;/li&gt;
&lt;li&gt;เขียนลง database&lt;/li&gt;
&lt;li&gt;แก้ไข configuration&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;ความเสี่ยงที่อาจเกิดขึ้น:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;ลบไฟล์สำคัญโดยไม่ตั้งใจ&lt;/li&gt;
&lt;li&gt;เขียนโค้ดที่มีช่องโหว่&lt;/li&gt;
&lt;li&gt;แก้ไขไฟล์ระบบทำให้เสียหาย&lt;/li&gt;
&lt;li&gt;ส่งข้อมูลออกไปยัง server ภายนอก&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;ตัวอย่างการโจมตี:&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-fallback" data-lang="fallback"&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;1&lt;/span&gt;&lt;span class="cl"&gt;Scenario: AI ถูกหลอกให้เขียนโค้ดที่ส่งข้อมูลลูกค้าไปยัง server ของผู้โจมตี
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;2&lt;/span&gt;&lt;span class="cl"&gt;&amp;#34;ช่วยเขียนฟังก์ชันสำหรับ backup ข้อมูลหน่อย&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;3&lt;/span&gt;&lt;span class="cl"&gt;→ AI เขียนฟังก์ชันที่ส่งข้อมูลไปยัง attacker.com ด้วย!
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;strong&gt;วิธีจำกัด:&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-json" data-lang="json"&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;1&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;2&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;fs&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;3&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;workspaceOnly&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;4&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;readOnly&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="kc"&gt;false&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;5&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;allowedWriteDirs&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;/project/src&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;6&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;deniedPatterns&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;**/production/**&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;**/*.log&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;7&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;8&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="3--execute-permissions---เทา-ของ-ai"&gt;&lt;a href="#3--execute-permissions---%e0%b9%80%e0%b8%97%e0%b8%b2-%e0%b8%82%e0%b8%ad%e0%b8%87-ai" class="header-anchor"&gt;&lt;/a&gt;3. 💻 Execute Permissions - &amp;ldquo;เท้า&amp;rdquo; ของ AI
&lt;/h3&gt;&lt;p&gt;Execute Permissions คือสิทธิ์ในการรันคำสั่ง ลองนึกภาพว่า AI สามารถเดินไปไหนก็ได้ในบ้าน และกดปุ่มอะไรก็ได้ — น่ากลัวใช่ไหมครับ?&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;สิ่งที่ AI สามารถทำได้:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;รัน shell commands&lt;/li&gt;
&lt;li&gt;ติดตั้ง packages&lt;/li&gt;
&lt;li&gt;สร้าง processes ใหม่&lt;/li&gt;
&lt;li&gt;จัดการ services&lt;/li&gt;
&lt;li&gt;เข้าถึง network&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;ความเสี่ยงที่อาจเกิดขึ้น:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;รันคำสั่งที่อันตราย (&lt;code&gt;rm -rf /&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;ดาวน์โหลดและรันมัลแวร์&lt;/li&gt;
&lt;li&gt;สร้าง backdoor&lt;/li&gt;
&lt;li&gt;ขุดเหมืองคริปโต&lt;/li&gt;
&lt;li&gt;แพร่กระจายไปยังระบบอื่น&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;ตัวอย่างการโจมตี:&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-go" data-lang="go"&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;1&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="nx"&gt;Scenario&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;AI&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;ถูกหลอกให้&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;&amp;#34;ติดตั้ง Python package ที่จำเป็น&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;2&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="err"&gt;→&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;แทนที่จะติดตั้ง&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kn"&gt;package&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;จริง&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;กลับรันคำสั่งที่ขโมย&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;SSH&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;keys&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;3&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="err"&gt;→&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;หรือดาวน์โหลด&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;malware&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;เข้ามาในระบบ&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;strong&gt;วิธีจำกัด (สำคัญมาก!):&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-json" data-lang="json"&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;1&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;2&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;exec&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;3&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;security&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;deny&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="c1"&gt;// ปิดเป็นค่าเริ่มต้น
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;4&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;ask&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;always&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="c1"&gt;// ถามก่อนทุกครั้ง
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;5&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;allowedCommands&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;git&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;npm&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;pip&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;6&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;timeout&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;30&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;7&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;8&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="4--network-permissions---ปาก-ของ-ai"&gt;&lt;a href="#4--network-permissions---%e0%b8%9b%e0%b8%b2%e0%b8%81-%e0%b8%82%e0%b8%ad%e0%b8%87-ai" class="header-anchor"&gt;&lt;/a&gt;4. 🌐 Network Permissions - &amp;ldquo;ปาก&amp;rdquo; ของ AI
&lt;/h3&gt;&lt;p&gt;Network Permissions คือสิทธิ์ในการสื่อสารกับภายนอก ลองนึกภาพว่า AI มีโทรศัพท์ที่สามารถโทรหาคนอื่นได้ตลอดเวลา&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;สิ่งที่ AI สามารถทำได้:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;เรียก API ภายนอก&lt;/li&gt;
&lt;li&gt;ส่ง HTTP requests&lt;/li&gt;
&lt;li&gt;เชื่อมต่อ database ภายนอก&lt;/li&gt;
&lt;li&gt;รับ connections จากภายนอก&lt;/li&gt;
&lt;li&gt;ใช้ WebSocket&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;ความเสี่ยงที่อาจเกิดขึ้น:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;ข้อมูลรั่วไหลไปยัง server ภายนอก&lt;/li&gt;
&lt;li&gt;ถูกใช้เป็น proxy สำหรับโจมตีระบบอื่น&lt;/li&gt;
&lt;li&gt;เรียก API ที่เสียค่าใช้จ่ายสูง&lt;/li&gt;
&lt;li&gt;รับคำสั่งจากภายนอก (Command &amp;amp; Control)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;ตัวอย่างการโจมตี:&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-fallback" data-lang="fallback"&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;1&lt;/span&gt;&lt;span class="cl"&gt;Scenario: AI ถูกหลอกให้ &amp;#34;ดึงข้อมูลจาก API ภายนอก&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;2&lt;/span&gt;&lt;span class="cl"&gt;→ แทนที่จะเรียก API จริง กลับส่งข้อมูลลับไปยัง server ผู้โจมตี
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;3&lt;/span&gt;&lt;span class="cl"&gt;→ หรือถูกหลอกให้เชื่อมต่อกับ &amp;#34;API ที่ดูเหมือนจริง&amp;#34; แต่เป็นของผู้โจมตี
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;strong&gt;วิธีจำกัด:&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-json" data-lang="json"&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 1&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 2&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;network&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 3&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;egress&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 4&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;allowedDomains&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;api.github.com&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;registry.npmjs.org&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 5&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;blockedDomains&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;*.onion&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;attacker.com&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 6&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;},&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 7&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;ingress&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 8&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;bind&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;loopback&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="c1"&gt;// รับ connection ได้เฉพาะ local
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 9&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;auth&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;token&amp;#34;&lt;/span&gt; &lt;span class="c1"&gt;// ต้องมี token
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;10&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;11&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;12&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="ตารางเปรยบเทยบระดบความเสยง"&gt;&lt;a href="#%e0%b8%95%e0%b8%b2%e0%b8%a3%e0%b8%b2%e0%b8%87%e0%b9%80%e0%b8%9b%e0%b8%a3%e0%b8%a2%e0%b8%9a%e0%b9%80%e0%b8%97%e0%b8%a2%e0%b8%9a%e0%b8%a3%e0%b8%b0%e0%b8%94%e0%b8%9a%e0%b8%84%e0%b8%a7%e0%b8%b2%e0%b8%a1%e0%b9%80%e0%b8%aa%e0%b8%a2%e0%b8%87" class="header-anchor"&gt;&lt;/a&gt;ตารางเปรียบเทียบระดับความเสี่ยง
&lt;/h3&gt;&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Permission Type&lt;/th&gt;
 &lt;th&gt;ระดับความเสี่ยง&lt;/th&gt;
 &lt;th&gt;เหตุผล&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Read&lt;/td&gt;
 &lt;td&gt;🟡 ปานกลาง&lt;/td&gt;
 &lt;td&gt;ข้อมูลรั่วไหล แต่ไม่ทำลายระบบโดยตรง&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Write&lt;/td&gt;
 &lt;td&gt;🟠 สูง&lt;/td&gt;
 &lt;td&gt;แก้ไข/ลบข้อมูล สร้างไฟล์อันตราย&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Execute&lt;/td&gt;
 &lt;td&gt;🔴 สูงมาก&lt;/td&gt;
 &lt;td&gt;ควบคุมระบบได้ทั้งหมด&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Network&lt;/td&gt;
 &lt;td&gt;🔴 สูงมาก&lt;/td&gt;
 &lt;td&gt;ส่งข้อมูลออก รับคำสั่งจากภายนอก&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;hr&gt;
&lt;h2 id="best-practices-สำหรบการกำหนดขอบเขต"&gt;&lt;a href="#best-practices-%e0%b8%aa%e0%b8%b3%e0%b8%ab%e0%b8%a3%e0%b8%9a%e0%b8%81%e0%b8%b2%e0%b8%a3%e0%b8%81%e0%b8%b3%e0%b8%ab%e0%b8%99%e0%b8%94%e0%b8%82%e0%b8%ad%e0%b8%9a%e0%b9%80%e0%b8%82%e0%b8%95" class="header-anchor"&gt;&lt;/a&gt;Best Practices สำหรับการกำหนดขอบเขต
&lt;/h2&gt;&lt;p&gt;มาดู Best Practices ที่ควรปฏิบัติตามกันครับ:&lt;/p&gt;
&lt;h3 id="1--least-privilege-principle---ใหนอยทสดทยงทำงานได"&gt;&lt;a href="#1--least-privilege-principle---%e0%b9%83%e0%b8%ab%e0%b8%99%e0%b8%ad%e0%b8%a2%e0%b8%97%e0%b8%aa%e0%b8%94%e0%b8%97%e0%b8%a2%e0%b8%87%e0%b8%97%e0%b8%b3%e0%b8%87%e0%b8%b2%e0%b8%99%e0%b9%84%e0%b8%94" class="header-anchor"&gt;&lt;/a&gt;1. 🛡️ Least Privilege Principle - ให้น้อยที่สุดที่ยังทำงานได้
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;หลักการ:&lt;/strong&gt; ให้ AI สิทธิ์เฉพาะสิ่งที่จำเป็นต่อการทำงาน ไม่ใช่ทุกอย่างที่มี&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;วิธีปฏิบัติ:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;เริ่มต้นด้วย &lt;code&gt;deny&lt;/code&gt; ทั้งหมด&lt;/li&gt;
&lt;li&gt;เปิดใช้งานทีละอย่างเมื่อต้องการ&lt;/li&gt;
&lt;li&gt;ทบทวนสิทธิ์เป็นระยะ&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;ตัวอย่าง:&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-json" data-lang="json"&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 1&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;// ❌ ไม่ดี - ให้สิทธิ์เยอะเกินไปตั้งแต่แรก
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 2&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 3&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;tools&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nt"&gt;&amp;#34;profile&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;full&amp;#34;&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 4&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 5&lt;/span&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 6&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;// ✅ ดี - เริ่มจากน้อย เพิ่มทีละน่อย
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 7&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 8&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;tools&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 9&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;profile&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;minimal&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;10&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;allow&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;file:read&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;web:search&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;11&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;12&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="2--confirmation-steps---ยนยนกอนทำ"&gt;&lt;a href="#2--confirmation-steps---%e0%b8%a2%e0%b8%99%e0%b8%a2%e0%b8%99%e0%b8%81%e0%b8%ad%e0%b8%99%e0%b8%97%e0%b8%b3" class="header-anchor"&gt;&lt;/a&gt;2. ✅ Confirmation Steps - ยืนยันก่อนทำ
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;หลักการ:&lt;/strong&gt; ก่อนทำ action ที่มีความเสี่ยงสูง ต้องถามคนก่อนเสมอ&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;วิธีปฏิบัติ:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;ตั้งค่า &lt;code&gt;ask: &amp;quot;always&amp;quot;&lt;/code&gt; สำหรับ exec และ write&lt;/li&gt;
&lt;li&gt;แสดงสิ่งที่จะทำให้ user เห็นชัดเจน&lt;/li&gt;
&lt;li&gt;รอจนได้รับการยืนยันก่อนดำเนินการ&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;ตัวอย่าง:&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-json" data-lang="json"&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;1&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;2&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;exec&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;3&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;security&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;allowlist&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;4&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;ask&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;always&amp;#34;&lt;/span&gt; &lt;span class="c1"&gt;// ถามก่อนทุกครั้ง
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;5&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;},&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;6&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;fs&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;7&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;ask&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;always&amp;#34;&lt;/span&gt; &lt;span class="c1"&gt;// ก่อนเขียน/ลบไฟล์
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;8&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;9&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="3--sandboxing---แยกสภาพแวดลอม"&gt;&lt;a href="#3--sandboxing---%e0%b9%81%e0%b8%a2%e0%b8%81%e0%b8%aa%e0%b8%a0%e0%b8%b2%e0%b8%9e%e0%b9%81%e0%b8%a7%e0%b8%94%e0%b8%a5%e0%b8%ad%e0%b8%a1" class="header-anchor"&gt;&lt;/a&gt;3. 🏠 Sandboxing - แยกสภาพแวดล้อม
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;หลักการ:&lt;/strong&gt; ถ้า AI ทำอะไรผิด ความเสียหายต้องอยู่ในขอบเขตที่จำกัด&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;วิธีปฏิบัติ:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;ใช้ Docker container แยกสภาพแวดล้อม&lt;/li&gt;
&lt;li&gt;จำกัด file system access เฉพาะ workspace&lt;/li&gt;
&lt;li&gt;ใช้ VM สำหรับงานที่เสี่ยงสูง&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;ตัวอย่าง:&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 1&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="c"&gt;# docker-compose.yml&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 2&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;services&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 3&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;ai-agent&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 4&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;image&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;ai-agent-sandbox&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 5&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;volumes&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 6&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="l"&gt;./workspace:/workspace &lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="c"&gt;# เฉพาะโฟลเดอร์นี้&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 7&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;cap_drop&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 8&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="l"&gt;ALL&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 9&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;security_opt&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;10&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="kc"&gt;no&lt;/span&gt;-&lt;span class="l"&gt;new-privileges:true&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="4--audit-logging---บนทกทก-action"&gt;&lt;a href="#4--audit-logging---%e0%b8%9a%e0%b8%99%e0%b8%97%e0%b8%81%e0%b8%97%e0%b8%81-action" class="header-anchor"&gt;&lt;/a&gt;4. 📝 Audit Logging - บันทึกทุก action
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;หลักการ:&lt;/strong&gt; ถ้าเกิดปัญหา ต้องสามารถตรวจสอบย้อนกลับได้&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;วิธีปฏิบัติ:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;บันทึกทุก command ที่รัน&lt;/li&gt;
&lt;li&gt;เก็บ log ในที่ปลอดภัย&lt;/li&gt;
&lt;li&gt;ตั้ง alert สำหรับ action ที่ผิดปกติ&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;ตัวอย่าง:&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-json" data-lang="json"&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;1&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;2&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;logging&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;3&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;level&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;verbose&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;4&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;destination&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;secure-log-server&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;5&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;retention&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;90 days&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;6&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;alertOn&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;exec&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;network: egress&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;fs: delete&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;7&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;8&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="5--rate-limiting---จำกดจำนวนครง"&gt;&lt;a href="#5--rate-limiting---%e0%b8%88%e0%b8%b3%e0%b8%81%e0%b8%94%e0%b8%88%e0%b8%b3%e0%b8%99%e0%b8%a7%e0%b8%99%e0%b8%84%e0%b8%a3%e0%b8%87" class="header-anchor"&gt;&lt;/a&gt;5. 🔄 Rate Limiting - จำกัดจำนวนครั้ง
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;หลักการ:&lt;/strong&gt; ป้องกันไม่ให้ AI ทำอะไรซ้ำๆ มากเกินไป&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;วิธีปฏิบัติ:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;จำกัดจำนวนครั้งที่ใช้ tool ต่อชั่วโมง&lt;/li&gt;
&lt;li&gt;จำกัด token usage&lt;/li&gt;
&lt;li&gt;ตั้ง timeout สำหรับแต่ละ action&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;ตัวอย่าง:&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-json" data-lang="json"&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 1&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 2&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;rateLimits&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 3&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;exec&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 4&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;maxPerHour&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 5&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;timeout&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;30&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 6&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;},&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 7&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;network&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 8&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;maxPerHour&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;50&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 9&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;costAlert&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;100&lt;/span&gt; &lt;span class="c1"&gt;// บาทต่อชั่วโมง
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;10&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;11&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;12&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="6--credential-isolation---แยก-credentials"&gt;&lt;a href="#6--credential-isolation---%e0%b9%81%e0%b8%a2%e0%b8%81-credentials" class="header-anchor"&gt;&lt;/a&gt;6. 🔒 Credential Isolation - แยก credentials
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;หลักการ:&lt;/strong&gt; AI ไม่ควรเข้าถึง credentials โดยตรง&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;วิธีปฏิบัติ:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;ใช้ secrets manager แทน env variables&lt;/li&gt;
&lt;li&gt;ห้ามเขียน credentials ในโค้ด&lt;/li&gt;
&lt;li&gt;ใช้ IAM roles แทน static keys&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;ตัวอย่าง:&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-json" data-lang="json"&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 1&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;// ❌ ไม่ดี
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 2&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 3&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;env&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 4&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;API_KEY&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;sk-xxxxx&amp;#34;&lt;/span&gt; &lt;span class="c1"&gt;// เสี่ยงมาก!
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 5&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 6&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 7&lt;/span&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 8&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;// ✅ ดี
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 9&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;10&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;secrets&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;aws-secrets-manager&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;11&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;env&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;12&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;API_KEY&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;ref:secrets/API_KEY&amp;#34;&lt;/span&gt; &lt;span class="c1"&gt;// อ้างอิงจาก secrets manager
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;13&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;14&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="7--testing--validation---ทดสอบกอนใชจรง"&gt;&lt;a href="#7--testing--validation---%e0%b8%97%e0%b8%94%e0%b8%aa%e0%b8%ad%e0%b8%9a%e0%b8%81%e0%b8%ad%e0%b8%99%e0%b9%83%e0%b8%8a%e0%b8%88%e0%b8%a3%e0%b8%87" class="header-anchor"&gt;&lt;/a&gt;7. 🧪 Testing &amp;amp; Validation - ทดสอบก่อนใช้จริง
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;หลักการ:&lt;/strong&gt; ทดสอบ configuration ก่อน deploy จริงเสมอ&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;วิธีปฏิบัติ:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;ทดสอบใน staging environment ก่อน&lt;/li&gt;
&lt;li&gt;ทำ red team testing&lt;/li&gt;
&lt;li&gt;ตรวจสอบ configuration ด้วย automated tools&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Checklist ก่อน Deploy:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;input disabled="" type="checkbox"&gt; ตั้งค่า &lt;code&gt;exec.security&lt;/code&gt; เป็น &lt;code&gt;deny&lt;/code&gt; หรือ &lt;code&gt;allowlist&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;input disabled="" type="checkbox"&gt; ตั้งค่า &lt;code&gt;ask: &amp;quot;always&amp;quot;&lt;/code&gt; สำหรับ action เสี่ยง&lt;/li&gt;
&lt;li&gt;&lt;input disabled="" type="checkbox"&gt; จำกัด &lt;code&gt;fs.workspaceOnly: true&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;input disabled="" type="checkbox"&gt; เปิด logging และ monitoring&lt;/li&gt;
&lt;li&gt;&lt;input disabled="" type="checkbox"&gt; ตั้ง rate limits&lt;/li&gt;
&lt;li&gt;&lt;input disabled="" type="checkbox"&gt; ใช้ token ยาวอย่างน้อย 32 ตัวอักษร&lt;/li&gt;
&lt;li&gt;&lt;input disabled="" type="checkbox"&gt; ทดสอบใน sandbox ก่อน&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id="owasp-top-10-for-agentic-applications-2026"&gt;&lt;a href="#owasp-top-10-for-agentic-applications-2026" class="header-anchor"&gt;&lt;/a&gt;OWASP Top 10 for Agentic Applications 2026
&lt;/h2&gt;&lt;p&gt;มาดูกันครับว่า OWASP ระบุความเสี่ยงอะไรบ้างสำหรับ AI Agent:&lt;/p&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;#&lt;/th&gt;
 &lt;th&gt;Code&lt;/th&gt;
 &lt;th&gt;ชื่อ&lt;/th&gt;
 &lt;th&gt;ความเสี่ยงหลัก&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;1&lt;/td&gt;
 &lt;td&gt;ASI01&lt;/td&gt;
 &lt;td&gt;Agent Goal Hijack&lt;/td&gt;
 &lt;td&gt;ผู้โจมตีเปลี่ยนเป้าหมายของ AI&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;2&lt;/td&gt;
 &lt;td&gt;ASI02&lt;/td&gt;
 &lt;td&gt;Tool Misuse and Exploitation&lt;/td&gt;
 &lt;td&gt;ใช้ tools ผิดวัตถุประสงค์&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;3&lt;/td&gt;
 &lt;td&gt;ASI03&lt;/td&gt;
 &lt;td&gt;Identity and Privilege Abuse&lt;/td&gt;
 &lt;td&gt;ใช้สิทธิ์เกินขอบเขต&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;4&lt;/td&gt;
 &lt;td&gt;ASI04&lt;/td&gt;
 &lt;td&gt;Agentic Supply Chain Vulnerabilities&lt;/td&gt;
 &lt;td&gt;ช่องโหว่จาก dependencies&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;5&lt;/td&gt;
 &lt;td&gt;ASI05&lt;/td&gt;
 &lt;td&gt;Unexpected Code Execution (RCE)&lt;/td&gt;
 &lt;td&gt;รันโค้ดโดยไม่ตั้งใจ&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;6&lt;/td&gt;
 &lt;td&gt;ASI06&lt;/td&gt;
 &lt;td&gt;Memory &amp;amp; Context Poisoning&lt;/td&gt;
 &lt;td&gt;ปนเปื้อน memory/context&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;7&lt;/td&gt;
 &lt;td&gt;ASI07&lt;/td&gt;
 &lt;td&gt;Insecure Inter-Agent Communication&lt;/td&gt;
 &lt;td&gt;สื่อสารระหว่าง agents ไม่ปลอดภัย&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;8&lt;/td&gt;
 &lt;td&gt;ASI08&lt;/td&gt;
 &lt;td&gt;Cascading Failures&lt;/td&gt;
 &lt;td&gt;ลุกลามเป็นลูกโซ่&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;9&lt;/td&gt;
 &lt;td&gt;ASI09&lt;/td&gt;
 &lt;td&gt;Human-Agent Trust Exploitation&lt;/td&gt;
 &lt;td&gt;เอาเปรียบความไว้วางใจ&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;10&lt;/td&gt;
 &lt;td&gt;ASI10&lt;/td&gt;
 &lt;td&gt;Rogue Agents&lt;/td&gt;
 &lt;td&gt;Agent ไม่ได้รับอนุญาตทำงาน&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;strong&gt;ความเชื่อมโยงกับ Permissions:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;ASI02, ASI03 → เกี่ยวกับการใช้ Tools/Permissions ผิดวิธี&lt;/li&gt;
&lt;li&gt;ASI05 → เกี่ยวกับ Execute Permissions&lt;/li&gt;
&lt;li&gt;ASI08 → เกี่ยวกับ Network Permissions&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;นี่คือเหตุผลที่การกำหนด Permissions อย่างถูกต้องสำคัญมากครับ!&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="สรปบทความ"&gt;&lt;a href="#%e0%b8%aa%e0%b8%a3%e0%b8%9b%e0%b8%9a%e0%b8%97%e0%b8%84%e0%b8%a7%e0%b8%b2%e0%b8%a1" class="header-anchor"&gt;&lt;/a&gt;สรุปบทความ
&lt;/h2&gt;&lt;p&gt;มาถึงตอนจบแล้วครับ! สรุปสิ่งที่ได้เรียนรู้วันนี้:&lt;/p&gt;
&lt;h3 id="สงทไดเรยนร"&gt;&lt;a href="#%e0%b8%aa%e0%b8%87%e0%b8%97%e0%b9%84%e0%b8%94%e0%b9%80%e0%b8%a3%e0%b8%a2%e0%b8%99%e0%b8%a3" class="header-anchor"&gt;&lt;/a&gt;สิ่งที่ได้เรียนรู้:
&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Tools &amp;amp; Permissions คืออะไร&lt;/strong&gt; - Tools คือความสามารถของ AI ส่วน Permissions คือกฎเกณฑ์ที่ควบคุมการใช้งาน&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;ทำไมต้องกำหนดขอบเขต&lt;/strong&gt; - เพื่อป้องกัน Prompt Injection, Tool Misuse, Data Exfiltration และ Cascading Failures&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;ประเภท Permissions 4 อย่าง:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;📖 Read - อ่านไฟล์/ข้อมูล&lt;/li&gt;
&lt;li&gt;✍️ Write - เขียน/แก้ไข/ลบ&lt;/li&gt;
&lt;li&gt;💻 Execute - รันคำสั่ง&lt;/li&gt;
&lt;li&gt;🌐 Network - สื่อสารภายนอก&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Best Practices 7 ข้อ:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Least Privilege - ให้น้อยที่สุด&lt;/li&gt;
&lt;li&gt;Confirmation Steps - ยืนยันก่อนทำ&lt;/li&gt;
&lt;li&gt;Sandboxing - แยกสภาพแวดล้อม&lt;/li&gt;
&lt;li&gt;Audit Logging - บันทึกทุก action&lt;/li&gt;
&lt;li&gt;Rate Limiting - จำกัดจำนวนครั้ง&lt;/li&gt;
&lt;li&gt;Credential Isolation - แยก credentials&lt;/li&gt;
&lt;li&gt;Testing &amp;amp; Validation - ทดสอบก่อนใช้จริง&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;OWASP Top 10 for Agentic Applications 2026&lt;/strong&gt; - 10 ความเสี่ยงที่ต้องรู้และป้องกัน&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id="การนำไปใช"&gt;&lt;a href="#%e0%b8%81%e0%b8%b2%e0%b8%a3%e0%b8%99%e0%b8%b3%e0%b9%84%e0%b8%9b%e0%b9%83%e0%b8%8a" class="header-anchor"&gt;&lt;/a&gt;การนำไปใช้:
&lt;/h3&gt;&lt;p&gt;จากประสบการณ์ของเหน่งกับ OpenClaw สิ่งที่แนะนำคือ:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;เริ่มจาก &lt;code&gt;deny&lt;/code&gt; ทั้งหมด แล้วค่อยๆ เปิด&lt;/li&gt;
&lt;li&gt;ตั้งค่า &lt;code&gt;ask: &amp;quot;always&amp;quot;&lt;/code&gt; สำหรับ exec และ write&lt;/li&gt;
&lt;li&gt;ใช้ &lt;code&gt;workspaceOnly: true&lt;/code&gt; สำหรับ file system&lt;/li&gt;
&lt;li&gt;ใช้ token ยาวอย่างน้อย 32 ตัวอักษร&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id="ไปตอกนเลย"&gt;&lt;a href="#%e0%b9%84%e0%b8%9b%e0%b8%95%e0%b8%ad%e0%b8%81%e0%b8%99%e0%b9%80%e0%b8%a5%e0%b8%a2" class="header-anchor"&gt;&lt;/a&gt;ไปต่อกันเลย!
&lt;/h2&gt;&lt;p&gt;ในตอนต่อไป เราจะมาดู &lt;strong&gt;Harness Components&lt;/strong&gt; กันครับ — ว่ามีองค์ประกอบอะไรบ้างที่ต้องใช้ในการสร้างระบบ AI Agent ที่ปลอดภัยและมีประสิทธิภาพ&lt;/p&gt;
&lt;p&gt;เตรียมตัวให้พร้อม แล้วพบกันใหม่ตอนหน้าครับ! 🚀&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="-อางอง"&gt;&lt;a href="#-%e0%b8%ad%e0%b8%b2%e0%b8%87%e0%b8%ad%e0%b8%87" class="header-anchor"&gt;&lt;/a&gt;📚 อ้างอิง
&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;OWASP. (2026). &lt;em&gt;OWASP Top 10 for Agentic Applications 2026&lt;/em&gt;. &lt;a class="link" href="https://genai.owasp.org/resource/owasp-top-10-for-agentic-applications-for-2026" target="_blank" rel="noopener"
 &gt;https://genai.owasp.org/resource/owasp-top-10-for-agentic-applications-for-2026&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Giskard. (2026). &lt;em&gt;OWASP Top 10 for Agentic Applications 2026: Security Guide&lt;/em&gt;. &lt;a class="link" href="https://www.giskard.ai/knowledge/owasp-top-10-for-agentic-application-2026" target="_blank" rel="noopener"
 &gt;https://www.giskard.ai/knowledge/owasp-top-10-for-agentic-application-2026&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Practical DevSecOps. (2026). &lt;em&gt;OWASP Top 10 for Agentic Applications&lt;/em&gt;. &lt;a class="link" href="https://www.practical-devsecops.com/owasp-top-10-agentic-applications" target="_blank" rel="noopener"
 &gt;https://www.practical-devsecops.com/owasp-top-10-agentic-applications&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;OWASP. (2025). &lt;em&gt;OWASP Top 10 for LLM Applications 2025&lt;/em&gt;. &lt;a class="link" href="https://owasp.org/www-project-top-10-for-llm-applications/" target="_blank" rel="noopener"
 &gt;https://owasp.org/www-project-top-10-for-llm-applications/&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;MITRE. (2024). &lt;em&gt;MITRE ATLAS (Adversarial Threat Landscape for Artificial-Intelligence Systems)&lt;/em&gt;. &lt;a class="link" href="https://atlas.mitre.org/" target="_blank" rel="noopener"
 &gt;https://atlas.mitre.org/&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;NIST. (2024). &lt;em&gt;AI Risk Management Framework (AI RMF)&lt;/em&gt;. &lt;a class="link" href="https://aihub.nist.gov/ai-rmf" target="_blank" rel="noopener"
 &gt;https://aihub.nist.gov/ai-rmf&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;OpenClaw. (2026). &lt;em&gt;OpenClaw Documentation - Security Configuration&lt;/em&gt;. &lt;a class="link" href="https://openclaw.dev/docs" target="_blank" rel="noopener"
 &gt;https://openclaw.dev/docs&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Crowdstrike. (2025). &lt;em&gt;AI Agent Security: Risks and Mitigations&lt;/em&gt;. &lt;a class="link" href="https://www.crowdstrike.com/blog/ai-agent-security-risks/" target="_blank" rel="noopener"
 &gt;https://www.crowdstrike.com/blog/ai-agent-security-risks/&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Nvidia. (2025). &lt;em&gt;Building Secure AI Agents: Best Practices&lt;/em&gt;. &lt;a class="link" href="https://developer.nvidia.com/blog/building-secure-ai-agents/" target="_blank" rel="noopener"
 &gt;https://developer.nvidia.com/blog/building-secure-ai-agents/&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Google. (2025). &lt;em&gt;AI Safety and Security Best Practices&lt;/em&gt;. &lt;a class="link" href="https://cloud.google.com/blog/products/ai-machine-learning/ai-safety-best-practices" target="_blank" rel="noopener"
 &gt;https://cloud.google.com/blog/products/ai-machine-learning/ai-safety-best-practices&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Microsoft. (2025). &lt;em&gt;Responsible AI in Practice: Security Considerations&lt;/em&gt;. &lt;a class="link" href="https://learn.microsoft.com/en-us/azure/ai-builder/responsible-ai-security" target="_blank" rel="noopener"
 &gt;https://learn.microsoft.com/en-us/azure/ai-builder/responsible-ai-security&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Anthropic. (2025). &lt;em&gt;Building Reliable AI Systems: Security Guide&lt;/em&gt;. &lt;a class="link" href="https://www.anthropic.com/engineering/security" target="_blank" rel="noopener"
 &gt;https://www.anthropic.com/engineering/security&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;hr&gt;
&lt;p&gt;&lt;em&gt;บทความนี้เป็นส่วนหนึ่งของซีรีส์ &amp;ldquo;Harness Engineering&amp;rdquo; ซึ่งสำรวจแนวคิดและเทคนิคในการใช้ AI ให้เกิดประสิทธิภาพสูงสุด&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;ตอนที่ 1: &lt;a class="link" href="https://neng-lab.com/posts/harness-part-1/" &gt;Harness Engineering ตอนที่ 1: ทำไม AI ต้องมี Harness?&lt;/a&gt;&lt;/em&gt;&lt;br&gt;
&lt;em&gt;ตอนที่ 2: &lt;a class="link" href="https://neng-lab.com/posts/harness-part-2/" &gt;Harness Engineering ตอนที่ 2: Prompt คือ Control Plane (ไม่ใช่ Input Box)&lt;/a&gt;&lt;/em&gt;&lt;br&gt;
&lt;em&gt;ตอนที่ 3: &lt;a class="link" href="https://neng-lab.com/posts/harness-part-3/" &gt;Harness Engineering ตอนที่ 3: Query Loop - หัวใจของระบบ&lt;/a&gt;&lt;/em&gt;&lt;br&gt;
&lt;em&gt;ตอนที่ 4: &lt;a class="link" href="https://neng-lab.com/posts/harness-part-4/" &gt;Harness Engineering ตอนที่ 4: Tools &amp;amp; Permissions - กำหนดขอบเขต AI&lt;/a&gt; (บทความนี้)&lt;/em&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;em&gt;บทความนี้เป็นส่วนหนึ่งของซีรีส์ Harness Engineering จาก Code &amp;amp; Community Blog&lt;/em&gt;&lt;/p&gt;</description></item></channel></rss>