• <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 旅途 閱讀(621) 評論(0)  編輯 收藏 引用 所屬分類: C/C++

            欧美日韩中文字幕久久久不卡| 久久亚洲精品无码播放| 青青青青久久精品国产h久久精品五福影院1421| 伊人色综合久久天天网| 香蕉久久AⅤ一区二区三区| 成人国内精品久久久久影院VR| 国产精品一区二区久久不卡 | 亚洲精品无码久久久久sm| 亚洲人成无码网站久久99热国产 | 狠狠色丁香婷婷综合久久来| 欧洲精品久久久av无码电影| 久久午夜无码鲁丝片| .精品久久久麻豆国产精品| 波多野结衣中文字幕久久| 国产欧美久久久精品| 成人精品一区二区久久| 久久综合亚洲色HEZYO国产| 亚洲欧洲久久av| 午夜人妻久久久久久久久| 丰满少妇高潮惨叫久久久| 色综合久久天天综合| 久久国产视屏| 亚洲熟妇无码另类久久久| 国产91久久精品一区二区| 中文字幕一区二区三区久久网站| 久久精品国产色蜜蜜麻豆| 久久久久精品国产亚洲AV无码| 欧美熟妇另类久久久久久不卡| 久久久久久国产精品无码超碰| 久久99国产精品久久| 久久精品极品盛宴观看| 久久久久亚洲Av无码专| 狠狠久久综合| 久久综合给合久久国产免费| 精品久久久久中文字幕一区| 日韩精品久久无码人妻中文字幕| 亚洲国产精品久久久久网站| 久久无码AV一区二区三区| 一本色道久久88加勒比—综合| 久久AV无码精品人妻糸列| 久久99精品久久久久久水蜜桃|