Flawfinder version 2.0.10, (C) 2001-2019 David A. Wheeler. Number of rules (primarily dangerous function names) in C/C++ ruleset: 223 Examining data/kylin-nm-3.0.1/hot-spot/dlghotspotcreate.cpp Examining data/kylin-nm-3.0.1/hot-spot/dlghotspotcreate.h Examining data/kylin-nm-3.0.1/src/loadingdiv.h Examining data/kylin-nm-3.0.1/src/mainwindow.h Examining data/kylin-nm-3.0.1/src/onelancform.cpp Examining data/kylin-nm-3.0.1/src/utils.h Examining data/kylin-nm-3.0.1/src/backthread.h Examining data/kylin-nm-3.0.1/src/utils.cpp Examining data/kylin-nm-3.0.1/src/kylin-dbus-interface.h Examining data/kylin-nm-3.0.1/src/backthread.cpp Examining data/kylin-nm-3.0.1/src/kylin-network-interface.h Examining data/kylin-nm-3.0.1/src/ksimplenm.cpp Examining data/kylin-nm-3.0.1/src/loadingdiv.cpp Examining data/kylin-nm-3.0.1/src/onelancform.h Examining data/kylin-nm-3.0.1/src/ksimplenm.h Examining data/kylin-nm-3.0.1/src/switchbutton.h Examining data/kylin-nm-3.0.1/src/kylin-network-interface.c Examining data/kylin-nm-3.0.1/src/switchbutton.cpp Examining data/kylin-nm-3.0.1/src/main.cpp Examining data/kylin-nm-3.0.1/src/mainwindow.cpp Examining data/kylin-nm-3.0.1/src/oneconnform.h Examining data/kylin-nm-3.0.1/src/oneconnform.cpp Examining data/kylin-nm-3.0.1/src/confform.cpp Examining data/kylin-nm-3.0.1/src/kylin-dbus-interface.cpp Examining data/kylin-nm-3.0.1/src/confform.h Examining data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifi.cpp Examining data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifisecleap.h Examining data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifisecfast.cpp Examining data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifileap.h Examining data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifiwpa.cpp Examining data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifisecpwd.cpp Examining data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifisectls.h Examining data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifisectls.cpp Examining data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifiwep.cpp Examining data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifisecpeap.h Examining data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifisecleap.cpp Examining data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifiwep.h Examining data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifisecfast.h Examining data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifisecpwd.h Examining data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifisectunneltls.cpp Examining data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifisecpeap.cpp Examining data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifileap.cpp Examining data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifiwpa.h Examining data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifi.h Examining data/kylin-nm-3.0.1/wireless-security/kylinheadfile.cpp Examining data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifisectunneltls.h Examining data/kylin-nm-3.0.1/wireless-security/kylinheadfile.h FINAL RESULTS: data/kylin-nm-3.0.1/src/backthread.cpp:428:14: [4] (shell) popen: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. p_file = popen("nmcli connection show -active", "r"); data/kylin-nm-3.0.1/src/kylin-network-interface.c:72:9: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(ifn[j].if_name,ifreq->ifr_name); data/kylin-nm-3.0.1/src/kylin-network-interface.c:87:18: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. int status = system("nmcli connection show > /tmp/conlist.txt"); data/kylin-nm-3.0.1/src/kylin-network-interface.c:202:18: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. int status = system(cmd); data/kylin-nm-3.0.1/src/kylin-network-interface.c:339:5: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(str,"nmcli connection add con-name %s ifname %s type %s",con_name,if_name,net_type); data/kylin-nm-3.0.1/src/kylin-network-interface.c:340:18: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. int status = system(str); data/kylin-nm-3.0.1/src/kylin-network-interface.c:348:5: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(str, "nmcli connection add con-name '%s' ifname '%s' type wifi ssid '%s'", data/kylin-nm-3.0.1/src/kylin-network-interface.c:350:18: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. int status = system(str); data/kylin-nm-3.0.1/src/kylin-network-interface.c:358:5: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(str,"nmcli connection delete %s",con_name); data/kylin-nm-3.0.1/src/kylin-network-interface.c:359:18: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. int status = system(str); data/kylin-nm-3.0.1/src/kylin-network-interface.c:368:5: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(str,"nmcli connection modify '%s' ipv4.method %s",con_name,automethod); data/kylin-nm-3.0.1/src/kylin-network-interface.c:369:18: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. int status = system(str); data/kylin-nm-3.0.1/src/kylin-network-interface.c:378:5: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(str,"nmcli connection modify '%s' ipv4.method %s ipv4.address %s",con_name,method,ip); data/kylin-nm-3.0.1/src/kylin-network-interface.c:379:18: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. int status = system(str); data/kylin-nm-3.0.1/src/kylin-network-interface.c:386:5: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(str, "nmcli connection modify '%s' ipv4.method manual ipv4.address %s/%s ipv4.gateway %s ipv4.dns %s", data/kylin-nm-3.0.1/src/kylin-network-interface.c:388:18: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. int status = system(str); data/kylin-nm-3.0.1/src/kylin-network-interface.c:399:9: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(str,"nmcli connection modify %s connection.autoconnect %s",con_name,ac); data/kylin-nm-3.0.1/src/kylin-network-interface.c:403:9: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(str,"nmcli connection modify %s connection.autoconnect %s",con_name,ac); data/kylin-nm-3.0.1/src/kylin-network-interface.c:405:18: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. int status = system(str); data/kylin-nm-3.0.1/src/kylin-network-interface.c:413:5: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(str,"nmcli connection modify %s ipv4.address %s",con_name,ip); data/kylin-nm-3.0.1/src/kylin-network-interface.c:414:18: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. int status = system(str); data/kylin-nm-3.0.1/src/kylin-network-interface.c:422:5: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(str,"nmcli connection modify %s ipv4.gateway %s",con_name,gw); data/kylin-nm-3.0.1/src/kylin-network-interface.c:423:18: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. int status = system(str); data/kylin-nm-3.0.1/src/kylin-network-interface.c:431:5: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(str,"nmcli connection modify %s ipv4.dns %s",con_name,dns); data/kylin-nm-3.0.1/src/kylin-network-interface.c:432:18: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. int status = system(str); data/kylin-nm-3.0.1/src/kylin-network-interface.c:440:5: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(str,"nmcli connection up '%s'",con_name); data/kylin-nm-3.0.1/src/kylin-network-interface.c:441:18: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. int status = system(str); data/kylin-nm-3.0.1/src/kylin-network-interface.c:449:5: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(str,"nmcli connection down '%s'",con_name); data/kylin-nm-3.0.1/src/kylin-network-interface.c:450:18: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. int status = system(str); data/kylin-nm-3.0.1/src/kylin-network-interface.c:458:5: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(str,"export LANG='en_US.UTF-8';export LANGUAGE='en_US';nmcli device wifi connect '%s' password '%s'", con_name,passwd); data/kylin-nm-3.0.1/src/kylin-network-interface.c:459:18: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. int status = system(str); data/kylin-nm-3.0.1/src/kylin-network-interface.c:467:5: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(str,"nmcli device disconnect '%s'",if_name); data/kylin-nm-3.0.1/src/kylin-network-interface.c:468:18: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. int status = system(str); data/kylin-nm-3.0.1/src/kylin-network-interface.c:475:18: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. int status = system("nmcli device wifi > /tmp/wflist.txt"); data/kylin-nm-3.0.1/src/kylin-network-interface.c:614:18: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. int status = system("nmcli networking on"); data/kylin-nm-3.0.1/src/kylin-network-interface.c:621:18: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. int status = system("nmcli networking off"); data/kylin-nm-3.0.1/src/kylin-network-interface.c:628:18: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. int status = system("nmcli radio wifi on;sleep 3"); data/kylin-nm-3.0.1/src/kylin-network-interface.c:635:18: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. int status = system("nmcli radio wifi off;sleep 2"); data/kylin-nm-3.0.1/src/kylin-network-interface.c:651:5: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(ifr_ip.ifr_name,if_name); data/kylin-nm-3.0.1/src/kylin-network-interface.c:660:5: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(ipaddr,inet_ntoa(sin_ip.sin_addr));//#include <arpa/inet.h> data/kylin-nm-3.0.1/src/kylin-network-interface.c:678:5: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(ifr_brd.ifr_name,if_name); data/kylin-nm-3.0.1/src/kylin-network-interface.c:687:5: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(brdaddr,inet_ntoa(sin_brd.sin_addr)); data/kylin-nm-3.0.1/src/kylin-network-interface.c:705:5: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(ifr_mask.ifr_name,if_name); data/kylin-nm-3.0.1/src/kylin-network-interface.c:714:5: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(netmask,inet_ntoa(sin_netmask.sin_addr)); data/kylin-nm-3.0.1/src/kylin-network-interface.c:730:5: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(ifr_mac.ifr_name,if_name); data/kylin-nm-3.0.1/src/kylin-network-interface.c:738:5: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(macaddr,ether_ntoa(ðaddr));//#include <netinet/ether.h> data/kylin-nm-3.0.1/src/kylin-network-interface.c:759:5: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(ifr_MTU.ifr_name,if_name); data/kylin-nm-3.0.1/src/kylin-network-interface.c:796:5: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(bufstr,buf); data/kylin-nm-3.0.1/src/kylin-network-interface.c:822:9: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(value, p); data/kylin-nm-3.0.1/src/kylin-network-interface.c:862:9: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(value, p); data/kylin-nm-3.0.1/src/kylin-network-interface.c:902:9: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(value, p); data/kylin-nm-3.0.1/src/kylin-network-interface.c:942:9: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(value, p); data/kylin-nm-3.0.1/src/kylin-network-interface.c:982:9: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(value, p); data/kylin-nm-3.0.1/src/main.cpp:46:31: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. QString locale = QLocale::system().name(); data/kylin-nm-3.0.1/src/mainwindow.cpp:392:14: [4] (shell) popen: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. p_file = popen("export LANG='en_US.UTF-8';export LANGUAGE='en_US';nmcli -f type,device,name connection show", "r"); data/kylin-nm-3.0.1/src/mainwindow.cpp:784:18: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. int status = system(cmd.toUtf8().data()); data/kylin-nm-3.0.1/src/oneconnform.cpp:705:22: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. int status = system(cmd.toUtf8().data()); data/kylin-nm-3.0.1/src/oneconnform.cpp:737:22: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. int status = system(cmd.toUtf8().data()); data/kylin-nm-3.0.1/src/onelancform.cpp:396:22: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. int status = system(cmd.toUtf8().data()); data/kylin-nm-3.0.1/src/utils.cpp:134:13: [4] (buffer) sscanf: The scanf() family's %s operation, without a limit specification, permits buffer overflows (CWE-120, CWE-20). Specify a limit to %s, or use a different input function. sscanf(match,"%s ",tmp_value); data/kylin-nm-3.0.1/src/utils.cpp:144:21: [4] (buffer) sscanf: The scanf() family's %s operation, without a limit specification, permits buffer overflows (CWE-120, CWE-20). Specify a limit to %s, or use a different input function. sscanf(match,"%s ",tmp_value); data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifi.cpp:88:18: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. int status = system(cmd.toUtf8().data()); data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifi.cpp:212:22: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. int status = system(currStr.toUtf8().data()); data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifi.cpp:263:26: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. int status = system(cmd.toUtf8().data()); data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifi.cpp:307:18: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. int status = system(str.toUtf8().data()); data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifileap.cpp:78:18: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. int status = system("nmcli connection show>/tmp/kylin-nm-connshow"); data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifisecfast.cpp:101:18: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. int status = system("nmcli connection show>/tmp/kylin-nm-connshow"); data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifisecleap.cpp:84:18: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. int status = system("nmcli connection show>/tmp/kylin-nm-connshow"); data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifisecpeap.cpp:109:18: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. int status = system("nmcli connection show>/tmp/kylin-nm-connshow"); data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifisecpwd.cpp:85:18: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. int status = system("nmcli connection show>/tmp/kylin-nm-connshow"); data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifisectls.cpp:108:18: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. int status = system("nmcli connection show>/tmp/kylin-nm-connshow"); data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifisectunneltls.cpp:106:18: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. int status = system("nmcli connection show>/tmp/kylin-nm-connshow"); data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifiwep.cpp:84:18: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. int status = system("nmcli connection show>/tmp/kylin-nm-connshow"); data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifiwpa.cpp:94:18: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. int status = system(cmd.toUtf8().data()); data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifiwpa.cpp:222:22: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. int status = system(currStr.toUtf8().data()); data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifiwpa.cpp:278:26: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. int status = system(cmd.toUtf8().data()); data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifiwpa.cpp:337:18: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. int status = system(str.toUtf8().data()); data/kylin-nm-3.0.1/src/onelancform.cpp:94:5: [3] (random) srand: This function is not sufficiently random for security-related functions such as key and nonce creation (CWE-327). Use a more secure technique for acquiring random values. srand((unsigned)time(NULL)); data/kylin-nm-3.0.1/src/backthread.cpp:59:15: [2] (misc) open: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if (!file.open(QIODevice::ReadOnly | QIODevice::Text)) { data/kylin-nm-3.0.1/src/backthread.cpp:259:15: [2] (misc) open: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if (!file.open(QIODevice::ReadOnly | QIODevice::Text)) { data/kylin-nm-3.0.1/src/backthread.cpp:329:15: [2] (misc) open: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if (!file.open(QIODevice::ReadOnly | QIODevice::Text)) { data/kylin-nm-3.0.1/src/backthread.cpp:389:15: [2] (misc) open: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if (!file.open(QIODevice::ReadOnly | QIODevice::Text)) { data/kylin-nm-3.0.1/src/backthread.cpp:424:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BUF_SIZE]; data/kylin-nm-3.0.1/src/kylin-network-interface.c:41:14: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. unsigned char buf[1024]; data/kylin-nm-3.0.1/src/kylin-network-interface.c:93:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char ConStrLine[1024]; data/kylin-nm-3.0.1/src/kylin-network-interface.c:94:15: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if((confp=fopen(filename,"r"))==NULL) data/kylin-nm-3.0.1/src/kylin-network-interface.c:111:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char StrLine[1024]; data/kylin-nm-3.0.1/src/kylin-network-interface.c:112:12: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if((fp=fopen(filename,"r"))==NULL) data/kylin-nm-3.0.1/src/kylin-network-interface.c:125:9: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char conname[100]; data/kylin-nm-3.0.1/src/kylin-network-interface.c:147:9: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char type[100]; data/kylin-nm-3.0.1/src/kylin-network-interface.c:212:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char activeStrLine[1024]; data/kylin-nm-3.0.1/src/kylin-network-interface.c:213:18: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if((activefp=fopen(filename,"r"))==NULL) data/kylin-nm-3.0.1/src/kylin-network-interface.c:229:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char StrLine[1024]; data/kylin-nm-3.0.1/src/kylin-network-interface.c:230:12: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if((fp=fopen(filename,"r"))==NULL) data/kylin-nm-3.0.1/src/kylin-network-interface.c:245:9: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char conname[100]; data/kylin-nm-3.0.1/src/kylin-network-interface.c:267:9: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char type[100]; data/kylin-nm-3.0.1/src/kylin-network-interface.c:302:9: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char dev[100]; data/kylin-nm-3.0.1/src/kylin-network-interface.c:337:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char str[100]; data/kylin-nm-3.0.1/src/kylin-network-interface.c:347:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char str[200]; data/kylin-nm-3.0.1/src/kylin-network-interface.c:357:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char str[100]; data/kylin-nm-3.0.1/src/kylin-network-interface.c:366:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char str[100]; data/kylin-nm-3.0.1/src/kylin-network-interface.c:376:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char str[100]; data/kylin-nm-3.0.1/src/kylin-network-interface.c:385:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char str[200]; data/kylin-nm-3.0.1/src/kylin-network-interface.c:395:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char str[100]; data/kylin-nm-3.0.1/src/kylin-network-interface.c:412:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char str[100]; data/kylin-nm-3.0.1/src/kylin-network-interface.c:421:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char str[100]; data/kylin-nm-3.0.1/src/kylin-network-interface.c:430:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char str[100]; data/kylin-nm-3.0.1/src/kylin-network-interface.c:439:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char str[100]; data/kylin-nm-3.0.1/src/kylin-network-interface.c:448:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char str[100]; data/kylin-nm-3.0.1/src/kylin-network-interface.c:457:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char str[100]; data/kylin-nm-3.0.1/src/kylin-network-interface.c:466:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char str[100]; data/kylin-nm-3.0.1/src/kylin-network-interface.c:481:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char WfStrLine[1024]; data/kylin-nm-3.0.1/src/kylin-network-interface.c:482:14: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if((wffp=fopen(filename,"r"))==NULL) data/kylin-nm-3.0.1/src/kylin-network-interface.c:500:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char StrLine[1024]; data/kylin-nm-3.0.1/src/kylin-network-interface.c:501:12: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if((fp=fopen(filename,"r"))==NULL) data/kylin-nm-3.0.1/src/kylin-network-interface.c:531:9: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char ssid[100]; data/kylin-nm-3.0.1/src/kylin-network-interface.c:558:9: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char signal[10]; data/kylin-nm-3.0.1/src/kylin-network-interface.c:566:30: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). wflist[count].signal=atoi(signal); data/kylin-nm-3.0.1/src/kylin-network-interface.c:581:9: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char safety[20]; data/kylin-nm-3.0.1/src/kylin-network-interface.c:779:12: [2] (misc) open: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). int fd=open("/proc/net/dev", O_RDONLY); data/kylin-nm-3.0.1/src/kylin-network-interface.c:785:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[1024*2]; data/kylin-nm-3.0.1/src/kylin-network-interface.c:802:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[1024*2]; data/kylin-nm-3.0.1/src/kylin-network-interface.c:826:24: [2] (integer) atol: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). rtbyt[0] = atol(value); data/kylin-nm-3.0.1/src/kylin-network-interface.c:831:24: [2] (integer) atol: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). rtbyt[1] = atol(value); data/kylin-nm-3.0.1/src/kylin-network-interface.c:842:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[1024*2]; data/kylin-nm-3.0.1/src/kylin-network-interface.c:866:24: [2] (integer) atol: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). rtpkt[0] = atol(value); data/kylin-nm-3.0.1/src/kylin-network-interface.c:871:24: [2] (integer) atol: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). rtpkt[1] = atol(value); data/kylin-nm-3.0.1/src/kylin-network-interface.c:882:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[1024*2]; data/kylin-nm-3.0.1/src/kylin-network-interface.c:906:25: [2] (integer) atol: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). rterrs[0] = atol(value); data/kylin-nm-3.0.1/src/kylin-network-interface.c:911:25: [2] (integer) atol: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). rterrs[1] = atol(value); data/kylin-nm-3.0.1/src/kylin-network-interface.c:922:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[1024*2]; data/kylin-nm-3.0.1/src/kylin-network-interface.c:946:25: [2] (integer) atol: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). rtdrop[0] = atol(value); data/kylin-nm-3.0.1/src/kylin-network-interface.c:951:25: [2] (integer) atol: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). rtdrop[1] = atol(value); data/kylin-nm-3.0.1/src/kylin-network-interface.c:962:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[1024*2]; data/kylin-nm-3.0.1/src/kylin-network-interface.c:986:25: [2] (integer) atol: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). rtfifo[0] = atol(value); data/kylin-nm-3.0.1/src/kylin-network-interface.c:991:25: [2] (integer) atol: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). rtfifo[1] = atol(value); data/kylin-nm-3.0.1/src/mainwindow.cpp:127:14: [2] (misc) open: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). fd = open(lockPath.toUtf8().data(), O_WRONLY | O_CREAT | O_TRUNC, S_IRUSR | S_IWUSR); data/kylin-nm-3.0.1/src/mainwindow.cpp:133:14: [2] (misc) open: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). fd = open("/tmp/kylin-nm-lock", O_WRONLY | O_CREAT | O_TRUNC, S_IRUSR | S_IWUSR); data/kylin-nm-3.0.1/src/mainwindow.cpp:388:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[BUF_SIZE]; data/kylin-nm-3.0.1/src/utils.cpp:42:16: [2] (race) vfork: On some old systems, vfork() permits race conditions, and it's very difficult to use correctly (CWE-362). Use fork() instead. if ((pid = vfork()) <0) { data/kylin-nm-3.0.1/src/utils.cpp:47:15: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. const char *new_argv[4]; data/kylin-nm-3.0.1/src/utils.cpp:104:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buffer[1024]; //文件中的内容暂存在字符缓冲区里 data/kylin-nm-3.0.1/src/utils.cpp:109:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char tmp_value[128]; data/kylin-nm-3.0.1/src/utils.cpp:117:24: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ( (net_dev_file=fopen("/proc/net/dev", "r")) == NULL ) { //打开文件/pro/net/dev/,从中读取流量数据 data/kylin-nm-3.0.1/src/utils.h:71:13: [2] (misc) open: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). qss.open(QFile::ReadOnly); data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifi.cpp:91:14: [2] (misc) open: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if(!file.open(QIODevice::ReadOnly | QIODevice::Text)){ data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifi.cpp:216:18: [2] (misc) open: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if(!file.open(QIODevice::ReadOnly | QIODevice::Text)){ data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifi.cpp:268:23: [2] (misc) open: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if (!file.open(QIODevice::ReadOnly | QIODevice::Text)) { data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifileap.cpp:81:14: [2] (misc) open: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if(!file.open(QIODevice::ReadOnly | QIODevice::Text)){ data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifisecfast.cpp:104:14: [2] (misc) open: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if(!file.open(QIODevice::ReadOnly | QIODevice::Text)){ data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifisecleap.cpp:87:14: [2] (misc) open: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if(!file.open(QIODevice::ReadOnly | QIODevice::Text)){ data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifisecpeap.cpp:112:14: [2] (misc) open: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if(!file.open(QIODevice::ReadOnly | QIODevice::Text)){ data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifisecpwd.cpp:88:14: [2] (misc) open: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if(!file.open(QIODevice::ReadOnly | QIODevice::Text)){ data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifisectls.cpp:111:14: [2] (misc) open: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if(!file.open(QIODevice::ReadOnly | QIODevice::Text)){ data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifisectunneltls.cpp:109:14: [2] (misc) open: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if(!file.open(QIODevice::ReadOnly | QIODevice::Text)){ data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifiwep.cpp:87:14: [2] (misc) open: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if(!file.open(QIODevice::ReadOnly | QIODevice::Text)){ data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifiwpa.cpp:99:14: [2] (misc) open: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if(!file.open(QIODevice::ReadOnly | QIODevice::Text)){ data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifiwpa.cpp:227:18: [2] (misc) open: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if(!file.open(QIODevice::ReadOnly | QIODevice::Text)){ data/kylin-nm-3.0.1/wireless-security/dlgconnhidwifiwpa.cpp:284:23: [2] (misc) open: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if (!file.open(QIODevice::ReadOnly | QIODevice::Text)) { data/kylin-nm-3.0.1/src/kylin-network-interface.c:141:9: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(conname,StrLine,num+1); data/kylin-nm-3.0.1/src/kylin-network-interface.c:143:9: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(clist[count].con_name,conname,num+1); data/kylin-nm-3.0.1/src/kylin-network-interface.c:175:9: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(type,index1+2,num1+1); data/kylin-nm-3.0.1/src/kylin-network-interface.c:177:9: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(clist[count].type,type,num1+1); data/kylin-nm-3.0.1/src/kylin-network-interface.c:261:9: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(conname,StrLine,num+1); data/kylin-nm-3.0.1/src/kylin-network-interface.c:263:9: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(activelist[count].con_name,conname,num+1); data/kylin-nm-3.0.1/src/kylin-network-interface.c:295:9: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(type,index1+2,num1+1); data/kylin-nm-3.0.1/src/kylin-network-interface.c:297:9: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(activelist[count].type,type,num1+1); data/kylin-nm-3.0.1/src/kylin-network-interface.c:319:9: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(dev,index3+1,num2+1); data/kylin-nm-3.0.1/src/kylin-network-interface.c:321:9: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(activelist[count].dev,dev,num2+1); data/kylin-nm-3.0.1/src/kylin-network-interface.c:537:9: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(ssid,StrLine+3,num-1); data/kylin-nm-3.0.1/src/kylin-network-interface.c:542:9: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(wflist[count].ssid,ssid,num-ssidnum+1); data/kylin-nm-3.0.1/src/kylin-network-interface.c:562:9: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(signal,index+8,signalnum); data/kylin-nm-3.0.1/src/kylin-network-interface.c:590:9: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(safety,index,safetynum+1); data/kylin-nm-3.0.1/src/kylin-network-interface.c:595:9: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(wflist[count].safety,safety,safetynum+2); data/kylin-nm-3.0.1/src/kylin-network-interface.c:788:16: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). int nBytes=read(fd,buf,sizeof(buf)-1); data/kylin-nm-3.0.1/src/utils.cpp:131:29: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). match = match + strlen(netname) + strlen(":"); //地址偏移到冒号 data/kylin-nm-3.0.1/src/utils.cpp:131:47: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). match = match + strlen(netname) + strlen(":"); //地址偏移到冒号 data/kylin-nm-3.0.1/src/utils.cpp:135:29: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). match = match + strlen(tmp_value); data/kylin-nm-3.0.1/src/utils.cpp:136:31: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). for (size_t i=0;i<strlen(buffer);i++) { data/kylin-nm-3.0.1/src/utils.cpp:145:37: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). match = match + strlen(tmp_value); ANALYSIS SUMMARY: Hits = 180 Lines analyzed = 13349 in approximately 0.74 seconds (17952 lines/second) Physical Source Lines of Code (SLOC) = 10004 Hits@level = [0] 113 [1] 21 [2] 81 [3] 1 [4] 77 [5] 0 Hits@level+ = [0+] 293 [1+] 180 [2+] 159 [3+] 78 [4+] 77 [5+] 0 Hits/KSLOC@level+ = [0+] 29.2883 [1+] 17.9928 [2+] 15.8936 [3+] 7.79688 [4+] 7.69692 [5+] 0 Dot directories skipped = 1 (--followdotdir overrides) Minimum risk level = 1 Not every hit is necessarily a security vulnerability. There may be other security vulnerabilities; review your code! See 'Secure Programming HOWTO' (https://dwheeler.com/secure-programs) for more information.