• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            旅途

            如果想飛得高,就該把地平線忘掉

            [轉載]C語言防止緩沖區溢出方法

            C語言使用直接的內存訪問,緩沖區溢出是經常出現的安全問題。
            下面將介紹常見的緩沖區溢出,及防止方法。

            1、判斷邊界
            例程序:
            void outstr(int a[10])
            {
                    for(i=0;a[i]!=0&&i<10;i++)
                    {
                            printf("%d\n",a[i]);
                    }
            }
            當i=10時,判斷i<10同時需要判斷a[i]!=0,
            此時a[10]已經訪問到非法區域,可能引起緩沖區溢出問題。

            防止方法:將判斷條件分成幾條語句
            例:
            if(i<10){
                    if(a[i]!=0){
                            ...
                    }
            }

            2、字符串操作
            C語言的字符串庫沒有安全保護,在使用時要特別小心。
            strcpy、strcat等函數操作時沒有檢查緩沖區大小,容易引起安全問題。
            防止方法:
            1)使用strncpy、strncat,限制拷貝字符串長度。
            2)或者是在strcpy、strcat之前檢查緩沖區大小是否滿足要求。

            3、free
            free后指針不是NULL。所以判斷指針是否為NULL并不能保證指針有效。
            防止方法:在free后重置指針。
            free(p);p=NULL;

            4、指針未初始化
            指針未初始化便引用。指針初始值未知,無法根據值判定指針是否有效。
            指針聲明后盡快初始化,如不能初始化為有效值,也要初始化為NULL。
            防止方法:每次使用指針,不能確定指針有效時,先判斷指針是否為NULL。
             


            posted on 2007-07-22 02:16 旅途 閱讀(627) 評論(0)  編輯 收藏 引用 所屬分類: C/C++

            亚洲国产一成久久精品国产成人综合| 波多野结衣AV无码久久一区| 91精品免费久久久久久久久| 久久亚洲国产成人精品无码区| 久久久久久久久久久久久久| 99久久国产主播综合精品| 久久久久久国产精品免费免费 | 91久久精品视频| 伊人久久大香线蕉成人| 久久成人影院精品777| 无码人妻久久一区二区三区蜜桃 | 久久国产色AV免费观看| 日本久久久久久久久久| 久久国产精品久久| 久久久精品人妻一区二区三区四| 久久精品无码一区二区日韩AV| 久久国产免费观看精品3| 中文精品久久久久人妻| 久久福利片| 久久996热精品xxxx| 99久久人妻无码精品系列| 狠狠色婷婷久久综合频道日韩| 久久免费大片| 久久影院久久香蕉国产线看观看| 国内精品久久国产大陆| 久久99精品久久久久久hb无码| 性高湖久久久久久久久| 亚洲人成伊人成综合网久久久| 伊人 久久 精品| 伊人久久大香线蕉AV一区二区| 久久久久一级精品亚洲国产成人综合AV区 | 国产综合久久久久| 狠狠色丁香婷婷久久综合不卡| 久久国产精品成人影院| 99国产精品久久| 国产精品美女久久久久AV福利| 久久不射电影网| 九九久久精品无码专区| 香蕉99久久国产综合精品宅男自| 国产69精品久久久久观看软件 | 免费观看久久精彩视频|