Blog post cover

Untitled Post

рдирд╛рдЗрдЯрд╢реЗрдб: рдЬреЗрдирд░реЗрдЯрд┐рд╡ рдП-рдЖрдИ рдХреЗ рдЦрд╝рд┐рд▓рд╛рдлрд╝ рд▓рдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдХреНрд░рд╛рдВрддрд┐рдХрд╛рд░реА тАЬрдбреЗрдЯрд╛ рдкреЙрдЗрдЬрд╝рдирд┐рдВрдЧтАЭ рдЯреВрд▓

MIT рдЯреЗрдХреНрдиреЛрд▓реЙрдЬреА рд░рд┐рд╡реНрдпреВ рдореЗрдВ рдкреНрд░рдХрд╛рд╢рд┐рдд рд╢реЛрдз-рдЖрдзрд╛рд░рд┐рдд рд▓реЗрдЦ рд╕реЗ рдкреНрд░реЗрд░рд┐рдд, Nightshade рдПрдХ рдирдпрд╛ рдбреЗрдЯрд╛ рдкреЙрдЗрдЬрд╝рдирд┐рдВрдЧ рдЯреВрд▓ рд╣реИ, рдЬрд┐рд╕реЗ рдХрд▓рд╛рдХрд╛рд░реЛрдВ, рд╢реЛрдзрдХрд░реНрддрд╛рдУрдВ рдФрд░ рд╕рд╛рдЗрдмрд░-рд╕реБрд░рдХреНрд╖рд╛ рд╡рд┐рд╢реЗрд╖рдЬреНрдЮреЛрдВ рдХреЛ рдпрд╣ рд╕рдордЭрд╛рдиреЗ рдФрд░ рд░реЛрдХрдиреЗ рдореЗрдВ рдорджрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рдЙрдирдХреА рд░рдЪрдирд╛рддреНрдордХ рдХреГрддрд┐рдпреЛрдВ рдХрд╛ рджреБрд░реБрдкрдпреЛрдЧ рдЬреЗрдирд░реЗрдЯрд┐рд╡ рдП-рдЖрдИ рдореЙрдбрд▓ рдХреИрд╕реЗ рдХрд░рддреЗ рд╣реИрдВред


рд╕рд╛рдордЧреНрд░реА рд╕реВрдЪреА

  1. рдкрд░рд┐рдЪрдп
  2. рдЬреЗрдирд░реЗрдЯрд┐рд╡ рдП-рдЖрдИ, рдХреЙрдкреАрд░рд╛рдЗрдЯ рдФрд░ рдбреЗрдЯрд╛ рд╕реБрд░рдХреНрд╖рд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛
  3. рдбреЗрдЯрд╛ рдкреЙрдЗрдЬрд╝рдирд┐рдВрдЧ рдХреЛ рд╕рдордЭрдирд╛
  4. рдирд╛рдЗрдЯрд╢реЗрдб рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ
  5. рдирд╛рдЗрдЯрд╢реЗрдб-рдЬреИрд╕реА рддрдХрдиреАрдХреЛрдВ рдХрд╛ рддрдХрдиреАрдХреА рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди
  6. рдП-рдЖрдИ рдореЗрдВ рдбреЗрдЯрд╛ рдкреЙрдЗрдЬрд╝рдирд┐рдВрдЧ рдкрд░ рд╕рд╛рдЗрдмрд░-рд╕реБрд░рдХреНрд╖рд╛ рдХрд╛ рдирдЬрд╝рд░рд┐рдпрд╛
  7. рд╡рд╛рд╕реНрддрд╡рд┐рдХ рджреБрдирд┐рдпрд╛ рдХреЗ рдЙрджрд╛рд╣рд░рдг рдФрд░ рдЙрдкрдпреЛрдЧ-рдорд╛рдорд▓реЗ
  8. рдХрд╝рд╛рдиреВрдиреА рдФрд░ рдиреИрддрд┐рдХ рдирд┐рд╣рд┐рддрд╛рд░реНрде
  9. [рдбреЗрдЯрд╛ рд╕реБрд░рдХреНрд╖рд╛ рдФрд░ рдП-рдЖрдИ рдХрд╛ рднрд╡рд┐рд╖реНрдп](#рдбреЗрдЯрд╛ рд╕реБрд░рдХреНрд╖рд╛-рдФрд░-рдП-рдЖрдИ-рдХрд╛-рднрд╡рд┐рд╖реНрдп)
  10. рдирд┐рд╖реНрдХрд░реНрд╖
  11. рд╕рдВрджрд░реНрдн

рдкрд░рд┐рдЪрдп

рдЬреЗрдирд░реЗрдЯрд┐рд╡ рдП-рдЖрдИ рдиреЗ рд░рдЪрдирд╛рддреНрдордХ рдЬрдЧрдд рдореЗрдВ рдХреНрд░рд╛рдВрддрд┐ рд▓рд╛ рджреА рд╣реИ; рдорд╛рддреНрд░ рдЯреЗрдХреНрд╕реНрдЯ-рдкреНрд░реЙрдореНрдкреНрдЯ рд╕реЗ рд╣реА рдпрдерд╛рд░реНрдерд╡рд╛рджреА рдЪрд┐рддреНрд░, рдХрд▓рд╛ рдФрд░ рд╕рд╛рдордЧреНрд░реА рддреИрдпрд╛рд░ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИред рдкрд░рдВрддреБ рдЗрди рдкреНрд░рдЧрддрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдЪреБрдиреМрддрд┐рдпрд╛рдБ рднреА рдЖрддреА рд╣реИрдВред рдмрдбрд╝реА рдП-рдЖрдИ рдХрдВрдкрдирд┐рдпрд╛рдБ рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░ рд╕реЗ рдЕрд░рдмреЛрдВ рдЫрд╡рд┐рдпрд╛рдБ рд╕реНрдХреНрд░реИрдк рдХрд░ рд▓реЗрддреА рд╣реИрдВ, рдЬрд┐рдирдореЗрдВ рдХрд▓рд╛рдХрд╛рд░реЛрдВ рдХрд╛ рдХрд╛рд░реНрдп рднреА рд╢рд╛рдорд┐рд▓ рд╣реЛрддрд╛ рд╣реИтАФрдЕрдХреНрд╕рд░ рдмрдЧреИрд░ рдЕрдиреБрдорддрд┐ рдХреЗред рдпрд╣реА рдмрд┐рдВрджреБ рдХреЙрдкреАрд░рд╛рдЗрдЯ рдФрд░ рдмреМрджреНрдзрд┐рдХ рд╕рдВрдкрджрд╛ рдЕрдзрд┐рдХрд╛рд░реЛрдВ рдХреЛ рд▓реЗрдХрд░ рдмрд╣рд╕ рдЫреЗрдбрд╝ рджреЗрддрд╛ рд╣реИред

Nightshade рдПрдХ рд╕рдХреНрд░рд┐рдп рдмрдЪрд╛рд╡-рдкреНрд░рдгрд╛рд▓реА рдкреНрд░рд╕реНрддреБрдд рдХрд░рддрд╛ рд╣реИ: рдХрд▓рд╛рдХрд╛рд░ рдЕрдкрдиреА рдЫрд╡рд┐рдпреЛрдВ рдореЗрдВ рд╕реВрдХреНрд╖реНрдо рдмрджрд▓рд╛рд╡ (рдкрд░реНрдЯрд░реНрдмреЗрд╢рди) рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред рдЬрдм рдпреЗ рдЪрд┐рддреНрд░ рдЯреНрд░реЗрдирд┐рдВрдЧ рдбреЗрдЯрд╛рд╕реЗрдЯ рдореЗрдВ рдкрд╣реБрдБрдЪрддреЗ рд╣реИрдВ, рддреЛ рдпреЗ рдЫреЛрдЯреЗ-рдЫреЛрдЯреЗ рдмрджрд▓рд╛рд╡ рдП-рдЖрдИ рдореЙрдбрд▓ рдХреЛ рднреНрд░рдорд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдореЙрдбрд▓ рдХрд╛ рдЖрдЙрдЯрдкреБрдЯ рдЕрдЬреАрдмреЛрдЧрд░реАрдм рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕ рдмреНрд▓реЙрдЧ рдкреЛрд╕реНрдЯ рдореЗрдВ рд╣рдо рддрдХрдиреАрдХреА рд╡ рд╕рд╛рдЗрдмрд░-рд╕реБрд░рдХреНрд╖рд╛ рдкрд╣рд▓реБрдУрдВ рдХреЛ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рджреЗрдЦреЗрдВрдЧреЗ, рд╕рд╛рде рд╣реА рд╢реБрд░реБрд╡рд╛рддреА рд╡ рдЙрдиреНрдирдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдХреЛрдб рдЙрджрд╣рд╛рд░рдг рднреА рджреЗрдВрдЧреЗред


рдЬреЗрдирд░реЗрдЯрд┐рд╡ рдП-рдЖрдИ, рдХреЙрдкреАрд░рд╛рдЗрдЯ рдФрд░ рдбреЗрдЯрд╛ рд╕реБрд░рдХреНрд╖рд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛

рдЬреЗрдирд░реЗрдЯрд┐рд╡ рдП-рдЖрдИ рдХрд╛ рдЙрджрдп

рдЬреЗрдирд░реЗрдЯрд┐рд╡ рд╕рд┐рд╕реНрдЯрдореНрд╕ рд╡рд┐рд╢рд╛рд▓ рдбреЗрдЯрд╛рд╕реЗрдЯ рд╕реЗ рд╕реАрдЦрдХрд░ рдЪрд┐рддреНрд░, рдХрдерд╛рдПрдБ рдФрд░ рд╕рдВрдЧреАрдд рдЖрджрд┐ рддреИрдпрд╛рд░ рдХрд░рддреЗ рд╣реИрдВред рдкрд░рдВрддреБ рдпреЗ рдбреЗрдЯрд╛рд╕реЗрдЯ рдЕрдХреНрд╕рд░ рдмрд┐рдирд╛ рд░рдЪрдирд╛рдХрд╛рд░реЛрдВ рдХреА рдЕрдиреБрдорддрд┐ рдХреЗ рдЗрдХрдЯреНрдард╛ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред

рдХрд▓рд╛рдХрд╛рд░реЛрдВ рдХреА рдХреЙрдкреАрд░рд╛рдЗрдЯ рдЪрд┐рдВрддрд╛

рдХрд▓рд╛рдХрд╛рд░реЛрдВ рдХреЗ рд▓рд┐рдП рдпрд╣ рди рдХреЗрд╡рд▓ рдХреЙрдкреАрд░рд╛рдЗрдЯ рд╣рдирди рд╣реИ, рдмрд▓реНрдХрд┐ рд░рдЪрдирд╛рддреНрдордХ рдирд┐рдпрдВрддреНрд░рдг рдХрд╛ рд╣реНрд░рд╛рд╕ рднреАред рдмрдбрд╝реА рдЯреЗрдХ рдХрдВрдкрдирд┐рдпреЛрдВ рдФрд░ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдХрд▓рд╛рдХрд╛рд░реЛрдВ рдХреЗ рдмреАрдЪ рд╢рдХреНрддрд┐-рдЕрд╕рдВрддреБрд▓рди рдмрдврд╝рддрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред

рдбреЗрдЯрд╛ рд╕реБрд░рдХреНрд╖рд╛ рд╡ рдмреМрджреНрдзрд┐рдХ рд╕рдВрдкрджрд╛ рдЕрдзрд┐рдХрд╛рд░

Nightshade рдЬреИрд╕реЗ рдЯреВрд▓реНрд╕ рдбрд┐рдЬрд┐рдЯрд▓ тАЬрдЯреНрд░рд┐рдкрд╡рд╛рдпрд░тАЭ рдХреА рддрд░рд╣ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВтАФрдЕрджреГрд╢реНрдп рдмрджрд▓рд╛рд╡реЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЕрдирдзрд┐рдХреГрдд рд╕реНрдХреНрд░реИрдкрд┐рдВрдЧ рдХреЛ рд╣рддреЛрддреНрд╕рд╛рд╣рд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЬрд┐рдореНрдореЗрджрд╛рд░ рдП-рдЖрдИ рд╡рд┐рдХрд╛рд╕ рдХреА рдЪрд░реНрдЪрд╛ рдХреЛ рдмрдврд╝рд╛рд╡рд╛ рджреЗрддреЗ рд╣реИрдВред


рдбреЗрдЯрд╛ рдкреЙрдЗрдЬрд╝рдирд┐рдВрдЧ рдХреЛ рд╕рдордЭрдирд╛

рдбреЗрдЯрд╛ рдкреЙрдЗрдЬрд╝рдирд┐рдВрдЧ, рдкрд╛рд░рдВрдкрд░рд┐рдХ рд░реВрдк рд╕реЗ рд╕рд╛рдЗрдмрд░-рд╕реБрд░рдХреНрд╖рд╛ рдореЗрдВ рдПрдХ рдЖрдХреНрд░рд╛рдордХ рддрдХрдиреАрдХ рд░рд╣реА рд╣реИ; рдЗрд╕рдореЗрдВ рдореЙрдбрд▓ рдХреЗ рдЯреНрд░реЗрдирд┐рдВрдЧ рдбреЗрдЯрд╛ рдореЗрдВ рдЫреЗрдбрд╝рдЫрд╛рдбрд╝ рдХрд░ рдЙрд╕рдХреА рд╕реАрдЦ рдХреЛ рд╡рд┐рдХреГрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред Nightshade рд░рдХреНрд╖рд╛рддреНрдордХ рдЙрдкрдпреЛрдЧ рдХрд╛ рдЙрджрд╛рд╣рд░рдг рд╣реИ, рдЬрд╣рд╛рдБ рдирд┐рд░реНрдорд╛рддрд╛ рдЕрдкрдиреЗ рдЕрдзрд┐рдХрд╛рд░ рд╕реБрд░рдХреНрд╖рд┐рдд рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ рд░рдгрдиреАрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред

рдбреЗрдЯрд╛ рдкреЙрдЗрдЬрд╝рдирд┐рдВрдЧ рдХреНрдпрд╛ рд╣реИ?

рдЯреНрд░реЗрдирд┐рдВрдЧ рдбреЗрдЯрд╛ рдореЗрдВ рд╡рд┐рд╕рдВрдЧрддрд┐рдпрд╛рдБ (anomalies) рдЬреЛрдбрд╝рдХрд░ рдореЙрдбрд▓ рдХреЛ рднреНрд░рдорд┐рдд рдХрд░рдирд╛ред рдорд╛рдирд╡-рджреГрд╖реНрдЯрд┐ рд╕реЗ рдЪрд┐рддреНрд░ рд╕рдорд╛рди рджрд┐рдЦрддрд╛ рд╣реИ, рдкрд░ рдореЙрдбрд▓ рдЙрдирдореЗрдВ рдЧрд╝рд▓рдд рдкреИрдЯрд░реНрди рд╕реАрдЦрддрд╛ рд╣реИред

рдкреЙрдЗрдЬрд╝рдирд┐рдВрдЧ рдХрд╛ рддрдВрддреНрд░

рдорд╛рди рд▓реАрдЬрд┐рдП рдореЙрдбрд▓ рдХреБрддреНрддреЛрдВ рдХреА рддрд╕реНрд╡реАрд░реЛрдВ рдкрд░ рдЯреНрд░реЗрди рд╣реЛрддрд╛ рд╣реИред рдпрджрд┐ рдХреБрдЫ рддрд╕реНрд╡реАрд░реЛрдВ рдореЗрдВ рдЕрддрд┐рд╕реВрдХреНрд╖реНрдо рд╢реЛрд░ рдЬреЛрдбрд╝ рджрд┐рдпрд╛ рдЬрд╛рдП, рддреЛ рдореЙрдбрд▓ тАЬdogтАЭ рдХрд╛ рдорд╛рдирдЪрд┐рддреНрд░рдг тАЬcatтАЭ рдХреЗ рд╕рдорд╛рди рдХрд░рдиреЗ рд▓рдЧреЗрдЧрд╛ред рдЬреИрд╕реЗ-рдЬреИрд╕реЗ рдкреЙрдЗрдЬрд╝рди рдХреА рдЧрдИ рдЫрд╡рд┐рдпреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдмрдврд╝рддреА рд╣реИ, рдЧрдбрд╝рдмрдбрд╝реА рдкреВрд░реЗ рдореЙрдбрд▓ рдореЗрдВ рдлреИрд▓ рд╕рдХрддреА рд╣реИред


рдирд╛рдЗрдЯрд╢реЗрдб рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ

  1. рдЫрд╡рд┐ рд╕рдВрд╢реЛрдзрди: рдХрд▓рд╛рдХрд╛рд░ рдЬрдм рдСрдирд▓рд╛рдЗрди рдЪрд┐рддреНрд░ рдЕрдкрд▓реЛрдб рдХрд░рддрд╛ рд╣реИ, Nightshade рдкрд┐рдХреНрд╕рд▓ рдбреЗрдЯрд╛ рдореЗрдВ рд╕реВрдХреНрд╖реНрдо рдмрджрд▓рд╛рд╡ рдХрд░ рджреЗрддрд╛ рд╣реИред
  2. рдЕрджреГрд╢реНрдп рдкрд░реНрдЯрд░реНрдмреЗрд╢рди: рдорд╛рдирд╡ рдЖрдБрдЦ рдХреЛ рди рджрд┐рдЦрд╛рдИ рджреЗрдиреЗ рд╡рд╛рд▓реЗ рдпреЗ рдмрджрд▓рд╛рд╡ рдореЙрдбрд▓ рдХреЗ рд▓рд┐рдП рднрд╛рд░реА рдкрдбрд╝рддреЗ рд╣реИрдВред
  3. рдП-рдЖрдИ рдЯреНрд░реЗрдирд┐рдВрдЧ рдореЗрдВ рд╡реНрдпрд╡рдзрд╛рди: рдкреЙрдЗрдЬрд╝рди рдХреА рдЧрдИ рдЫрд╡рд┐рдпрд╛рдБ рдпрджрд┐ рдмрдбрд╝реЗ рдбреЗрдЯрд╛рд╕реЗрдЯ рдореЗрдВ рдЪрд▓реА рдЬрд╛рддреА рд╣реИрдВ, рддреЛ рдореЙрдбрд▓ рднреНрд░рдорд┐рдд рдЖрдЙрдЯрдкреБрдЯ рджреЗрдиреЗ рд▓рдЧрддрд╛ рд╣реИтАФрдХреБрддреНрддреЛрдВ рдХреЗ рдЪреЗрд╣рд░реЗ рд╡рд┐рдХреГрдд, рдкрд░рд┐рджреГрд╢реНрдп рдЕрддрд┐рдпрдерд╛рд░реНрдерд╡рд╛рджреА рдЗрддреНрдпрд╛рджрд┐ред

Glaze рдХреЗ рд╕рд╛рде рдПрдХреАрдХрд░рдг

Nightshade, Glaze рдирд╛рдордХ рджреВрд╕рд░реЗ рдЯреВрд▓ рдХреЗ рд╕рд╛рде рдорд┐рд▓рдХрд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред Glaze рдХрд▓рд╛рдХрд╛рд░ рдХреА рд╢реИрд▓реА рдХреЛ рдорд╛рд╕реНрдХ рдХрд░рддрд╛ рд╣реИ, рдЬрдмрдХрд┐ Nightshade рдбреЗрдЯрд╛ рдкреЙрдЗрдЬрд╝рдирд┐рдВрдЧ рдХрд░рддрд╛ рд╣реИред

рдУрдкрди-рд╕реЛрд░реНрд╕ рд▓рд╛рдн

Nightshade рдУрдкрди рд╕реЛрд░реНрд╕ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рд╕рдореБрджрд╛рдп-рдЖрдзрд╛рд░рд┐рдд рд╕реБрдзрд╛рд░, рдкрд╛рд░рджрд░реНрд╢рд┐рддрд╛ рдФрд░ рд╕рд╣рдпреЛрдЧ рдХреЛ рдмрдврд╝рд╛рд╡рд╛ рдорд┐рд▓рддрд╛ рд╣реИред


рдирд╛рдЗрдЯрд╢реЗрдб-рдЬреИрд╕реА рддрдХрдиреАрдХреЛрдВ рдХрд╛ рддрдХрдиреАрдХреА рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди

рдЗрдореЗрдЬ рдкрд░реНрдЯрд░реНрдмреЗрд╢рди рддрдХрдиреАрдХреЗрдВ

  1. рдкрд┐рдХреНрд╕рд▓-рд╕реНрддрд░реАрдп рд╢реЛрд░ рдЗрдВрдЬреЗрдХреНрд╢рди
  2. рдлрд╝реНрд░реАрдХреНрд╡реЗрдВрд╕реА-рдбреЛрдореЗрди рдлрд╝рд┐рд▓реНрдЯрд░рд┐рдВрдЧ (Fourier Transform рдЖрдзрд╛рд░рд┐рдд)
  3. рд╕реНрдЯрд╛рдЗрд▓ рдЯреНрд░рд╛рдВрд╕рдлрд╝рд░ рджреНрд╡рд╛рд░рд╛ рд╣рд▓реНрдХрд╛ тАЬрдХрдВрдЯреИрдордиреИрд╢рдитАЭ

рдХреЛрдб рдЙрджрд╛рд╣рд░рдг: рдкрд┐рдХреНрд╕рд▓ рдкрд░реНрдЯрд░реНрдмреЗрд╢рди рдХреЗ рд▓рд┐рдП Python рдЗрдореНрдкреНрд▓реЗрдореЗрдВрдЯреЗрд╢рди

import numpy as np
from PIL import Image, ImageEnhance

def add_subtle_noise(image_path, output_path, noise_level=5):
    """
    рдПрдХ рдЫрд╡рд┐ рдореЗрдВ рд╕реВрдХреНрд╖реНрдо рд░реИрдВрдбрдо рд╢реЛрд░ рдЬреЛрдбрд╝рддрд╛ рд╣реИред

    рдкреИрд░рд╛рдореАрдЯрд░:
    - image_path (str): рдЗрдирдкреБрдЯ рдЫрд╡рд┐ рдХрд╛ рдкрде
    - output_path (str): рдмрджрд▓реА рдЧрдИ (poisoned) рдЫрд╡рд┐ рд╕реЗрд╡ рдХрд░рдиреЗ рдХрд╛ рдкрде
    - noise_level (int): рдЬреЛрдбрд╝реЗ рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рд╢реЛрд░ рдХреА рддреАрд╡реНрд░рддрд╛
    """
    # рдЫрд╡рд┐ рдЦреЛрд▓реЗрдВ
    image = Image.open(image_path).convert('RGB')
    image_arr = np.array(image)

    # рд░реИрдВрдбрдо рд╢реЛрд░ рддреИрдпрд╛рд░ рдХрд░реЗрдВ
    noise = np.random.randint(-noise_level, noise_level,
                              image_arr.shape, dtype='int16')

    # рд╢реЛрд░ рдЬреЛрдбрд╝реЗрдВ рд╡ рдкрд┐рдХреНрд╕рд▓ рд░реЗрдВрдЬ рд╕реАрдорд┐рдд рдХрд░реЗрдВ
    poisoned_arr = image_arr.astype('int16') + noise
    poisoned_arr = np.clip(poisoned_arr, 0, 255).astype('uint8')

    # рд╡рд╛рдкрд╕ рдЫрд╡рд┐ рдореЗрдВ рдмрджрд▓реЗрдВ
    poisoned_image = Image.fromarray(poisoned_arr)

    # рд╡реИрдХрд▓реНрдкрд┐рдХ: рдХрдВрдЯреНрд░рд╛рд╕реНрдЯ рдПрдбрдЬрд╕реНрдЯ рдХрд░рдХреЗ рд╢реЛрд░ рдХреЛ рдФрд░ рдЫрд┐рдкрд╛рдПрдБ
    enhancer = ImageEnhance.Contrast(poisoned_image)
    poisoned_image = enhancer.enhance(1.0)

    # рдкрд░рд┐рдгрд╛рдо рд╕реЗрд╡ рдХрд░реЗрдВ
    poisoned_image.save(output_path)
    print(f"Poisoned image saved at {output_path}")

# рдЙрджрд╛рд╣рд░рдг рдЙрдкрдпреЛрдЧ
if __name__ == "__main__":
    add_subtle_noise("original_art.jpg", "poisoned_art.jpg")

рдП-рдЖрдИ рдореЗрдВ рдбреЗрдЯрд╛ рдкреЙрдЗрдЬрд╝рдирд┐рдВрдЧ рдкрд░ рд╕рд╛рдЗрдмрд░-рд╕реБрд░рдХреНрд╖рд╛ рдХрд╛ рдирдЬрд╝рд░рд┐рдпрд╛

рдЦрд╝рддрд░реЗ рдХрд╛ рдкрд░рд┐рджреГрд╢реНрдп

рд╕реНрдХреНрд░реИрдк рдХрд┐рдП рдЧрдП рдбреЗрдЯрд╛ рдкрд░ рдирд┐рд░реНрднрд░ рдП-рдЖрдИ рдореЙрдбрд▓ рдПрдХ рдЧрддрд┐рд╢реАрд▓ рд╣рдорд▓рд╛-рд╕рддрд╣ (attack surface) рдмрдирд╛рддреЗ рд╣реИрдВред рдХреБрдЫ рд╣реА рдкреЙрдЗрдЬрд╝рди рдЫрд╡рд┐рдпрд╛рдБ рдореЙрдбрд▓ рдХреА рд╕рдЯреАрдХрддрд╛ рдХреЛ рдХрд╛рдлреА рд╣рдж рддрдХ рдмрд┐рдЧрд╛рдбрд╝ рд╕рдХрддреА рд╣реИрдВред

рдкреЙрдЗрдЬрд╝рди рдХрд┐рдП рдЧрдП рдбреЗрдЯрд╛ рд╕реИрдВрдкрд▓реНрд╕ рдХреА рд╕реНрдХреИрдирд┐рдВрдЧ рд╡ рд▓реЙрдЧрд┐рдВрдЧ

рдореЗрдЯрд╛рдбреЗрдЯрд╛, рдкрд┐рдХреНрд╕рд▓ рд╡рд┐рддрд░рдг, рдФрд░ рдлрд╝реНрд░реАрдХреНрд╡реЗрдВрд╕реА рдкреИрдЯрд░реНрди рдЬрд╛рдБрдЪрдХрд░ рд╕рдВрджрд┐рдЧреНрдз рдЫрд╡рд┐рдпреЛрдВ рдХреА рдкрд╣рдЪрд╛рди рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИред

рдХреЛрдб рдЙрджрд╛рд╣рд░рдг: рдЕрдиреЛрдорд▓рд╕ рдореЗрдЯрд╛рдбреЗрдЯрд╛ рд╕реНрдХреИрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП Bash рд╕реНрдХреНрд░рд┐рдкреНрдЯ
#!/bin/bash
# рдХрд┐рд╕реА рдбрд╛рдпрд░реЗрдХреНрдЯреНрд░реА рдореЗрдВ рд╕реНрдерд┐рдд рдЫрд╡рд┐рдпреЛрдВ рдХреЗ рдлрд╝рд╛рдЗрд▓ рд╕рд╛рдЗрдЬрд╝ рд╡ рдЯрд╛рдЗрдо-рд╕реНрдЯреИрдореНрдк рдХреА рдЬрд╛рдБрдЪ

IMAGE_DIR="./images"
EXPECTED_MIN_SIZE=50000    # рдиреНрдпреВрдирддрдо рд╕рд╛рдЗрдЬрд╝ (bytes)
EXPECTED_MAX_SIZE=5000000  # рдЕрдзрд┐рдХрддрдо рд╕рд╛рдЗрдЬрд╝ (bytes)

echo "рдбрд╛рдЗрд░реЗрдХреНрдЯреНрд░реА рд╕реНрдХреИрди рд╣реЛ рд░рд╣реА рд╣реИ: $IMAGE_DIR"
for image in "$IMAGE_DIR"/*.{jpg,png,jpeg}; do
  if [ -f "$image" ]; then
    FILE_SIZE=$(stat -c%s "$image")
    CREATION_DATE=$(stat -c%y "$image")

    if [ $FILE_SIZE -lt $EXPECTED_MIN_SIZE ] || [ $FILE_SIZE -gt $EXPECTED_MAX_SIZE ]; then
      echo "рдЕрдирд┐рдпрдорд┐рддрддрд╛ рдорд┐рд▓реА: $image"
      echo "    рд╕рд╛рдЗрдЬрд╝: $FILE_SIZE bytes, рдирд┐рд░реНрдорд┐рдд: $CREATION_DATE"
    fi
  fi
done
echo "рд╕реНрдХреИрди рдкреВрд░реНрдгред"

рд╡рд╛рд╕реНрддрд╡рд┐рдХ рджреБрдирд┐рдпрд╛ рдХреЗ рдЙрджрд╛рд╣рд░рдг рдФрд░ рдЙрдкрдпреЛрдЧ-рдорд╛рдорд▓реЗ

  1. рдХреБрддреНрддрд╛-рдЪрд┐рддреНрд░ рдЬрдирд░реЗрд╢рди рдореЙрдбрд▓ рдХреЛ рдмрд┐рдЧрд╛рдбрд╝рдирд╛
    50 рдкреЙрдЗрдЬрд╝рди рдХреБрддреНрддрд╛-рдЪрд┐рддреНрд░реЛрдВ рдХреЗ рдмрд╛рдж рдореЙрдбрд▓ рдиреЗ рдЕрдЬреАрдм-рд╕рд╛ рдЖрдЙрдЯрдкреБрдЯ рджреЗрдирд╛ рд╢реБрд░реВ рдХрд┐рдпрд╛; 300 рдЪрд┐рддреНрд░реЛрдВ рдкрд░ рдХреБрддреНрддрд╛-рдЪрд┐рддреНрд░ рдорд╛рдБрдЧрдиреЗ рдкрд░ рдмрд┐рд▓реНрд▓рд┐рдпреЛрдВ рдЬреИрд╕реЗ рдкреНрд░рд╛рдгреА рдЙрднрд░рдиреЗ рд▓рдЧреЗред

  2. рдЕрдирдзрд┐рдХреГрдд рдЖрд░реНрдЯ рд╕реНрдХреНрд░реИрдкрд┐рдВрдЧ рдХреЛ рд░реЛрдХрдирд╛
    рд▓реИрдВрдбрд╕реНрдХреЗрдк рдХрд▓рд╛ рдореЗрдВ рдЕрджреГрд╢реНрдп тАЬрдлрд╝рд┐рдВрдЧрд░рдкреНрд░рд┐рдВрдЯтАЭ рдЬреЛрдбрд╝рдХрд░ рдореЙрдбрд▓ рдХреЛ рдЧрд╝рд▓рдд рд▓реИрдВрдбрд╕реНрдХреЗрдк рд╢реИрд▓рд┐рдпрд╛рдБ рд╕реАрдЦрдиреЗ рдкрд░ рдордЬрдмреВрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ред

  3. рдХрд▓рд╛рддреНрдордХ рджрд╛рдпрд░реЗ рд╕реЗ рдмрд╛рд╣рд░ рд╕рд╛рдЗрдмрд░-рд╕реБрд░рдХреНрд╖рд╛ рдЕрдиреБрдкреНрд░рдпреЛрдЧ
    рд╡рд╣реА рд╕рд┐рджреНрдзрд╛рдВрдд рд╕реНрд╡рд╛рдпрддреНрдд рдЧрд╛рдбрд╝рд┐рдпреЛрдВ, рд╕реНрдкреИрдо рдкрд╣рдЪрд╛рди рдпрд╛ рдмреИрдВрдХрд┐рдВрдЧ рдзреЛрдЦрд╛рдзрдбрд╝реА рдореЙрдбрд▓ рдореЗрдВ рд╣рдорд▓реЛрдВ рдХреЛ рд╕рдордЭрдиреЗ рдФрд░ рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕реНрддреЗрдорд╛рд▓ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред


рдХрд╝рд╛рдиреВрдиреА рдФрд░ рдиреИрддрд┐рдХ рдирд┐рд╣рд┐рддрд╛рд░реНрде

рдХрд▓рд╛рдХрд╛рд░реЛрдВ рдХреЗ рдЕрдзрд┐рдХрд╛рд░

рдкреЙрдЗрдЬрд╝рдирд┐рдВрдЧ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрд▓рд╛рдХрд╛рд░ рдП-рдЖрдИ рдХрдВрдкрдирд┐рдпреЛрдВ рдХреЛ рд╕рдВрджреЗрд╢ рджреЗрддреЗ рд╣реИрдВ рдХрд┐ рдЕрдиреБрдорддрд┐ рдмрд┐рдирд╛ рдкреНрд░рдпреЛрдЧ рдХрд░рдирд╛ рдЬреЛрдЦрд┐рдордкреВрд░реНрдг рд╣реИ, рдЗрд╕рд╕реЗ рдЙрдЪрд┐рдд рдореБрдЖрд╡рдЬрд╝реЗ рд╡ рд╢реНрд░реЗрдп рдХреА рдорд╛рдБрдЧ рдХреЛ рдмрд▓ рдорд┐рд▓рддрд╛ рд╣реИред

рджреНрд╡рд┐рдЙрдкрдпреЛрдЧ (Dual-Use) рджреБрд╡рд┐рдзрд╛

рд░рдХреНрд╖рд╛рддреНрдордХ рддрдХрдиреАрдХ рдЖрдХреНрд░рд╛рдордХ рд░реВрдк рд╕реЗ рднреА рджреБрд░реБрдкрдпреЛрдЧ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИред рдЕрддрдГ рдиреИрддрд┐рдХ рджрд┐рд╢рд╛рдирд┐рд░реНрджреЗрд╢ рдФрд░ рдордЬрд╝рдмреВрдд рдбрд┐рдЯреЗрдХреНрд╢рди рд╕рд┐рд╕реНрдЯрдо рдЕрдирд┐рд╡рд╛рд░реНрдп рд╣реИрдВред

рдиреИрддрд┐рдХ рдП-рдЖрдИ рд╡рд┐рдХрд╛рд╕ рдХреА рдЬрд╝рд┐рдореНрдореЗрджрд╛рд░реА

рдбреЗрдЯрд╛ рд╕реНрд░реЛрддреЛрдВ рдХреА рдкрд╛рд░рджрд░реНрд╢рд┐рддрд╛, рдЙрдЪрд┐рдд рд▓рд╛рдЗрд╕реЗрдВрд╕рд┐рдВрдЧ рдФрд░ рдХрд▓рд╛рдХрд╛рд░реЛрдВ рдХреЗ рд╕рд╛рде рд╕рдВрд╡рд╛рдж рдП-рдЖрдИ рдЙрджреНрдпреЛрдЧ рдХреА рдиреИрддрд┐рдХ рдЬрд╝рд┐рдореНрдореЗрджрд╛рд░реА рд╣реИред


рдбреЗрдЯрд╛ рд╕реБрд░рдХреНрд╖рд╛ рдФрд░ рдП-рдЖрдИ рдХрд╛ рднрд╡рд┐рд╖реНрдп

  1. рд░реЙрдмрд╕реНрдЯрдиреЗрд╕ рдкрд░ рд╢реЛрдз тАФ adversarial training рд╡ рдмреЗрд╣рддрд░ anomaly detection
  2. рдУрдкрди-рд╕реЛрд░реНрд╕ рд╕рд╣рдпреЛрдЧ тАФ рддреЗрдЬрд╝ рдЗрдиреЛрд╡реЗрд╢рди рдФрд░ рд╕рд╛рдореБрджрд╛рдпрд┐рдХ рд╕рдореАрдХреНрд╖рд╛
  3. рдХрд╛рдиреВрдиреА рдврд╛рдБрдЪреЗ рдХрд╛ рдПрдХреАрдХрд░рдг тАФ рдмреМрджреНрдзрд┐рдХ рд╕рдВрдкрджрд╛ рдХрд╛рдиреВрдиреЛрдВ рдореЗрдВ рд╕рдВрднрд╛рд╡рд┐рдд рд╕реБрдзрд╛рд░
  4. рдХрд▓рд╛рдХрд╛рд░-рддрдХрдиреАрдХ рд╕рд╣рдпреЛрдЧ рдордВрдЪ тАФ рдХрд╛рд░реНрдпрд╢рд╛рд▓рд╛рдПрдБ, рдЯреВрд▓рдХрд┐рдЯ рдФрд░ рд╢реИрдХреНрд╖рд┐рдХ рд╕рдВрд╕рд╛рдзрди

рд╡реНрдпрд╡рд╣рд╛рд░рд┐рдХ рдХрджрдо: рдХрд▓рд╛рдХрд╛рд░ рд╡ рд╕рд╛рдЗрдмрд░-рд╕реБрд░рдХреНрд╖рд╛ рдкреЗрд╢реЗрд╡рд░реЛрдВ рдХреЗ рд▓рд┐рдП

  1. рдбреЗрдЯрд╛ рдкреЙрдЗрдЬрд╝рдирд┐рдВрдЧ рддрдХрдиреАрдХреЛрдВ рдХреЗ рд╕рд╛рде рдкреНрд░рдпреЛрдЧ рдХрд░реЗрдВред
  2. Glaze рд╡ Nightshade рдЬреИрд╕реЗ рдЯреВрд▓реНрд╕ рдЕрдкрдирд╛рдПрдБред
  3. рдЯреНрд░реЗрдирд┐рдВрдЧ рдбреЗрдЯрд╛ рдХрд╛ рдирд┐рдпрдорд┐рдд рдСрдбрд┐рдЯ рдХрд░реЗрдВред
  4. рд╕рдореБрджрд╛рдп рд╕реЗ рдЬреБрдбрд╝реЗ рд░рд╣реЗрдВ рдФрд░ рдпреЛрдЧрджрд╛рди рджреЗрдВред
  5. рдбрд┐рдЯреЗрдХреНрд╢рди рдПрд╡рдВ рдмрдЪрд╛рд╡ рдкреНрд░рдгрд╛рд▓реА рд╡рд┐рдХрд╕рд┐рдд рдХрд░реЗрдВред

рдирд┐рд╖реНрдХрд░реНрд╖

Nightshade рдбреЗрдЯрд╛ рдкреЙрдЗрдЬрд╝рдирд┐рдВрдЧ рдФрд░ рдмреМрджреНрдзрд┐рдХ рд╕рдВрдкрджрд╛ рд╕рдВрд░рдХреНрд╖рдг рдХреА рд╕реЛрдЪ рдореЗрдВ рдирдпрд╛ рдореЛрдбрд╝ рд▓рд╛рддрд╛ рд╣реИред рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ рд╣рдордиреЗ рдЗрд╕рдХреЗ рд╕рд┐рджреНрдзрд╛рдВрдд, рддрдХрдиреАрдХреА рддрдВрддреНрд░, рд╕рд╛рдЗрдмрд░-рд╕реБрд░рдХреНрд╖рд╛ рдкрд╣рд▓реВ рдФрд░ рдХрд╛рдиреВрдиреА-рдиреИрддрд┐рдХ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд┐рдпрд╛ред рдЬреЗрдирд░реЗрдЯрд┐рд╡ рдП-рдЖрдИ рдХреЗ рдмрдврд╝рддреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рд╕рд╛рде, рдРрд╕реЗ рд░рдХреНрд╖рд╛рддреНрдордХ рдЯреВрд▓реНрд╕ рдХрд╛ рдорд╣рддреНрд╡ рдФрд░ рднреА рдмрдврд╝реЗрдЧрд╛тАФрдЪрд╛рд╣реЗ рдЙрджреНрджреЗрд╢реНрдп рдбрд┐рдЬрд┐рдЯрд▓ рдХрд▓рд╛ рдХреА рд╕реБрд░рдХреНрд╖рд╛ рд╣реЛ рдпрд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдП-рдЖрдИ рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХреА рд╡рд┐рд╢реНрд╡рд╕рдиреАрдпрддрд╛ред


рд╕рдВрджрд░реНрдн


рдЗрд╕ рд▓реЗрдЦ рдиреЗ рджрд░реНрд╢рд╛рдпрд╛ рдХрд┐ рдХреИрд╕реЗ Nightshade рдФрд░ рд╕рдорд╛рди рддрдХрдиреАрдХреЗрдВ рд░рдЪрдирд╛рддреНрдордХ рд╕реНрд╡рддрдВрддреНрд░рддрд╛, рд╕рд╛рдЗрдмрд░-рд╕реБрд░рдХреНрд╖рд╛ рдФрд░ рдЬрд╝рд┐рдореНрдореЗрджрд╛рд░ рдП-рдЖрдИ рд╡рд┐рдХрд╛рд╕ рдХреЗ рдмреАрдЪ рд╕рдВрддреБрд▓рди рд╕рд╛рдзрдиреЗ рдореЗрдВ рд╕рд╣рд╛рдпрдХ рд╣реЛ рд╕рдХрддреА рд╣реИрдВред рдирд┐рд░рдВрддрд░ рд╢реЛрдз, рд╕рд╣рдпреЛрдЧ рдФрд░ рд╡рд┐рд╡реЗрдХрдкреВрд░реНрдг рд╡рд┐рдирд┐рдпрдо рд╕реЗ рд╣рдо рдПрдХ рдРрд╕рд╛ рднрд╡рд┐рд╖реНрдп рдЧрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд╣рд╛рдБ рддрдХрдиреАрдХ рдФрд░ рдХрд▓рд╛, рджреЛрдиреЛрдВ, рд╕рдореНрдорд╛рдирд┐рдд рдФрд░ рд╕рдВрд░рдХреНрд╖рд┐рдд рд░рд╣реЗрдВред

ЁЯЪА рдЕрдЧрд▓реЗ рд╕реНрддрд░ рдкрд░ рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИрдВ?

рдЕрдкрдиреЗ рд╕рд╛рдЗрдмрд░ рд╕реБрд░рдХреНрд╖рд╛ рдХрд░рд┐рдпрд░ рдХреЛ рдЕрдЧрд▓реЗ рд╕реНрддрд░ рдкрд░ рд▓реЗ рдЬрд╛рдПрдВ

рдпрджрд┐ рдЖрдкрдХреЛ рдпрд╣ рд╕рд╛рдордЧреНрд░реА рдореВрд▓реНрдпрд╡рд╛рди рд▓рдЧреА, рддреЛ рдХрд▓реНрдкрдирд╛ рдХреАрдЬрд┐рдП рдХрд┐ рдЖрдк рд╣рдорд╛рд░реЗ рд╡реНрдпрд╛рдкрдХ 47-рд╕рдкреНрддрд╛рд╣ рдХреЗ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рд╣рд╛рд╕рд┐рд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред 1,200+ рд╕реЗ рдЕрдзрд┐рдХ рдЫрд╛рддреНрд░реЛрдВ рд╕реЗ рдЬреБрдбрд╝реЗрдВ рдЬрд┐рдиреНрд╣реЛрдВрдиреЗ рдпреВрдирд┐рдЯ 8200 рддрдХрдиреАрдХреЛрдВ рдХреЗ рд╕рд╛рде рдЕрдкрдиреЗ рдХрд░рд┐рдпрд░ рдХреЛ рдмрджрд▓ рджрд┐рдпрд╛ рд╣реИред

97% рдЬреЙрдм рдкреНрд▓реЗрд╕рдореЗрдВрдЯ рджрд░
рдПрд▓реАрдЯ рдпреВрдирд┐рдЯ 8200 рддрдХрдиреАрдХреЗрдВ
42 рд╣реИрдВрдбреНрд╕-рдСрди рд▓реИрдмреНрд╕