With the increasing scale and complexity of software, the advantages of using neural networks for static vulnerability detection are becoming increasingly prominent. Before inputting into a neural network, the source code needs to undergo word embedding, transforming discrete high-dimensional text data into low-dimensional continuous vectors suitable for training in neural networks. However, analysis has revealed that different implementation ideas by code writers for the same functionality can lead to varied code implementation methods. Embedding different code texts into vectors results in distinctions that can reduce the robustness of a model. To address this issue, this paper explores the impact of converting source code into different forms on word embedding and finds that a TAC (Three-Address Code) can significantly eliminate noise caused by different code implementation approaches. Given the excellent capability of a GNN (Graph Neural Network) in handling non-Euclidean space data and complex features, this paper subsequently employs a GNN to learn and classify vulnerabilities by capturing the implicit syntactic structure information in a TAC. Based on this, this paper introduces TACSan, a novel static vulnerability detection system based on a GNN designed to detect vulnerabilities in C/C++ programs. TACSan transforms the preprocessed source code into a TAC representation, adds control and data edges to create a graph structure, and then inputs it into the GNN for training. Comparative testing and evaluation of TACSan against other renowned static analysis tools, such as VulDeePecker and Devign, demonstrate that TACSan’s detection capabilities not only exceed those methods but also achieve substantial enhancements in accuracy and F1 score.
After the interruption of the timing service, the increase in clock offset is a critical issue for the global navigation satellite system (GNSS)-disciplined oven-controlled crystal oscillator (OCXO). Current timekeeping methods for GNSS-disciplined OCXO have some drawbacks, such as high computational complexity, inadequate consideration of temperature effects, and insufficient separation of the impacts of temperature and aging. To address this issue, this study proposes a timekeeping method using a dual iterative algorithm. First, the external iteration separates the clock offset caused by temperature and aging. Then, the internal Gauss–Seidel iterative algorithm estimates the temperature and aging coefficients. During the timing service interruption phase, the model estimates and compensates for the frequency offset in real time using the coefficients. The proposed method demonstrates improved performance compared with OCXO in the free state and compensated by a second-order polynomial model, with better accuracy, drift rate, and long-term stability. The time offset is better than 4 μs over 24 h, representing an improvement of over 95% compared with the OCXO in the free state.
SBAS is mainly used in civil aviation and navigation, and will be applied to autonomous driving in the future. Given the open signal format of the Satellite Based Augmentation System (SBAS), which exposes security threats such as spoofing attacks, the utilization of SBAS navigation message authentication technology can improve the SBAS anti-spoofing ability from the system side. SBAS message authentication technology has become the future direction of SBAS system development. However, during the initial design of SBAS on L1, message authentication technology was not considered, and the addition of authentication messages will lead to further strain on existing message bandwidth resources. Therefore, in response to the issue of insufficient bandwidth resources after adding authentication messages to SBAS L1, a study on message scheduler for SBAS L1 authentication was conducted. A fixed time sequence dynamic message scheduler for incorporating authentication messages was proposed. This scheduler reduces the frequency of broadcasting clock error parameters to mitigate the impact of adding authentication messages. Furthermore, an optimized fixed time sequence dynamic message scheduler based on SBAS clock error messages was introduced. The results show that the message scheduler can not only improve the flexibility of SBAS message broadcasting, but also shorten the update interval of various types of messages under the premise of meeting the maximum update interval requirement. With minimal impact on the maximum message update interval, it improves the integrity, authenticity, and availability of messages. This approach can increase the effective message ratio in SBAS to over 91%, and the optimal solution reduces the initial user positioning time to 26 s.
As the directed greybox fuzzing (DGF) technique advances, it is being extensively utilized in various fields such as defect reproduction, patch testing, and vulnerability identification. Nevertheless, current DGFs waste a significant amount of resources due to their simplistic distance definitions and overly straightforward energy distribution for the seeds. To address these issues, a dynamic distance-weighting-based distance estimation strategy is proposed first, which facilitates strategies for seed distribution that take energy into consideration. Second, to overcome the limitations of current seed energy distribution strategies, the gray wolf optimizer (GWO) is improved by integrating four strategies, leading to the development of the improved gray wolf optimizer (IGWO). Lastly, an adaptive search algorithm is proposed, and the WolfFuzz prototype tool is implemented. In vulnerability recurrence scenarios, WolfFuzz is 3.2× faster on average compared with the baseline and reproduces 76.4% of existing bugs faster. WolfFuzz also discovers nine different types of bugs in seven real-world programs.