ﺣﻤﻼت SQLInjection و راهکارﻫﺎي ﻣﻘﺎﺑﻠﻪ
SQL injection web attack
از ﻃﺮﯾﻖ اﻃﻼﻋﺎت ورودي از ﺳﻮي SQL (ﯾﮏ ﺟﺴﺘﺠﻮي injection) (ﺷﺎﻣﻞ وارد ﮐﺮدن و ﯾﺎ ﺗﺰرﯾﻖ SQL Injection) SQL ﯾﮏ ﺣﻤﻠﻪ ي ﺗﺰرﯾﻖ ﻣﯽ ﺗﻮاﻧﺪ اﻃﻼﻋﺎت ﺣﺴﺎس را از ﺑﺎﻧﮏ اﻃﻼﻋﺎت ﺑﺨﻮاﻧﺪ، اﻃﻼﻋﺎت را ﺗﻐﯿﯿﺮ SQL (ﻣﻮﻓﻖ ﺗﺰرﯾﻖ exploit) ﮐﺎرﺑﺮ ﺑﻪ ﺑﺮﻧﺎﻣﻪ ﻣﯽ ﺑﺎﺷﺪ .ﯾﮏ ﺑﻬﺮه ﺑﺮداري (، ﻣﺤﺘﻮﯾﺎت ﯾﮏ ﻓﺎﯾﻞ ﺑﺮ DBMS (، ﻋﻤﻠﯿﺎت ﻣﺪﯾﺮﯾﺘﯽ ﺑﺮ روي ﺑﺎﻧﮏ اﻃﻼﻋﺎﺗﯽ اﺟﺮا ﮐﻨﺪ )ﻣﺎﻧﻨﺪ ﺧﺎﻣﻮش ﮐﺮدن Insert/Update/Delete)دﻫﺪ ﮔﻮﻧﻪ اي از ﺣﻤﻼت SQL را ﺑﺎزﯾﺎﺑﯽ ﮐﻨﺪ و در ﺑﺮﺧﯽ ﺣﺎﻻت ﻓﺮﻣﺎن ﻫﺎﯾﯽ را ﺑﺮاي ﺳﯿﺴﺘﻢ ﻋﺎﻣﻞ ﺻﺎدر ﮐﻨﺪ .ﺣﻤﻼت ﺗﺰرﯾﻖ DBMSروي ﺳﯿﺴﺘﻢ ﻓﺎﯾﻞ SQL ﻗﻄﺎر – اﻃﻼﻋﺎت ﺗﺰرﯾﻖ ﻣﯽ ﺷﻮﻧﺪ ﺗﺎ ﺑﺮ روي اﺟﺮاي دﺳﺘﻮرات از ﭘﯿﺶ ﺗﻌﯿﯿﻦ ﺷﺪه ي ، داﺧﻞ وروديSQLﺗﺰرﯾﻘﯽ ﻫﺴﺘﻨﺪ ﮐﻪ در ان دﺳﺘﻮرات ﺗﺎﺛﯿﺮ ﺑﮕﺬارﻧﺪ. ﯾﮏ ﺗﮑﻨﯿﮏ ﺗﺰرﯾﻖ ﮐﺪ اﺳﺖ ﮐﻪ ﯾﮏ اﺳﯿﺐ ﭘﺬﯾﺮي اﻣﻨﯿﺘﯽ ﮐﻪ در ﻻﯾﻪ ﺑﺎﻧﮏ اﻃﻼﻋﺎﺗﯽ ﯾﮏ ﺑﺮﻧﺎﻣﻪ رخ ﻣﯽ دﻫﺪ را اﮐﺴﭙﻠﻮﯾﺖ ﻣﯽ ﮐﻨﺪ SQLﺗﺰرﯾﻖ . ﯾﮑﯽ از ﻗﺪﯾﻤﯽ ﺗﺮﯾﻦ ﺣﻤﻼت ﻋﻠﯿﻪ ﺑﺮﻧﺎﻣﻪ ﻫﺎي ﺗﺤﺖ وب ﻣﯽ ﺑﺎﺷﺪSQLﺗﺰرﯾﻖ ﺑﻪ ﺷﮑﻞ ﻧﺎدرﺳﺘﯽ از ورودي SQL رﺷﺘﻪ ﻫﺎي ﻟﯿﺘﺮال ﺟﺎﺳﺎزي ﺷﺪه در ﺟﻤﻼت escapeاﯾﻦ اﺳﯿﺐ ﭘﺬﯾﺮي ﻫﻨﮕﺎﻣﯽ وﺟﻮد دارد ﮐﻪ ﮐﺎراﮐﺘﺮ ﻫﺎي ﮐﺎرﺑﺮ ﻓﯿﻠﺘﺮ ﺷﺪه ﺑﺎﺷﺪ و ﯾﺎ ورودي ﮐﺎرﺑﺮ ﻃﺒﻘﻪ ﺑﻨﺪي ﻧﺸﺪه ﺑﺎﺷﺪ و در ﻧﺘﯿﺠﻪ ﺑﻪ ﺻﻮرت ﻏﯿﺮ ﻣﻨﺘﻈﺮه اﺟﺮا ﻣﯽ ﺷﻮد .اﯾﻦ ﯾﮏ ﻧﻤﻮﻧﻪ از ﮐﻼس ﺟﺎﻣﻌﯽ از اﺳﯿﺐ ﭘﺬﯾﺮي ﻫﺎﺳﺖ ﮐﻪ ﻫﻨﮕﺎﻣﯽ رخ ﻣﯽ دﻫﻨﺪ ﮐﻪ ﺑﺮﻧﺎﻣﻪ ﻧﻮﯾﺴﯽ و ﯾﺎ زﺑﺎن اﺳﮑﺮﯾﭙﺖ ﻧﻮﯾﺴﯽ در داﺧﻞ دﯾﮕﺮي ﺟﺎﺳﺎزي ﺷﺪه اﻧﺪ.