-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsearch.json
1 lines (1 loc) · 9.53 KB
/
search.json
1
[{"title":"A Survey of Dynamic Program Analysis Techniques and Tools","url":"/home/2023/10/23/paper-reading-2023-10-23-A-Survey-of-Dynamic-Program-Analysis-Techniques-and-Tools/","content":"Summary\nThis paper is written by Anjana Gosain and Ganga Sharma and published on FICTA in 2014. The main purpose of this paper was to provide a survey of dynamic program analysis techniques and tools. Generally, a dynamic analysis technique involves two phases: 1) program instrumentation and profile/trace generation, 2) analysis or monitoring. Moreover, the dynamic program analysis techniques were classified into three categories: 1) Instrumentation Based, 2) VM profiling Based, 3) AOP(Aspect Oriented Programming) Based. Their merits and demerits were listed in the paper. Addtionally, many C++/Java-targeted tools were introduced in the paper.\nEnglish Learning\n\nwords:\npolymorphism\nmerit, demerit\ninvaluable\ndrawback\nexpertise\nphrases:\ngive emphasis on\ndevise techniques\ngather information\nrender static analysis imprecise\nrun-time overheads\nviolations of properties\ntechnical phrases:\nprogram instrumentation\nprofile/trace generation\n\n","tags":["program analysis, paper reading, summary"]},{"title":"A Survey on Automated Dynamic Malware-Analysis Techniques and Tools","url":"/home/2023/11/01/paper-reading-2023-11-01-A-Survey-on-Automated-Dynamic-Malware-Analysis-Techniques-and-Tools/","content":"Summary\nThis paper is a survey on automated dynamic malware analysis, written by Manuel Egele et al. in 2012. The paper first introduces the types of malware and then discusses the analysis techniques and tools. The types of malware are classified into:\n\nWorm.\nVirus.\nTrojan horse.\nSpyware.\nBot.\nRootkit.\n\nSpecific malware instances may exhibit the characteristics of multiple types. The analysis techniques for these malwares are classified into function call monitoring, function parameter analysis, information flow tracking, instruction trace, and autostart extensibility points. However, the sophisticated authors of malware also strived to evade investigation. For example, malwares may exhibit nonmalicious behavior when they detect analysis tools, and they are packed and obfuscated to encumber analysis conducted on them. Implementing a malware analysis system requires different design decisions that have far-reaching consequences. An analysis component that executes at a higher privilege level than the program under analysis cannot be accessed by this program. Implementing the analysis functionality on an emulator or virtual machine allows the analysis to conceal itself even from malware that executes in kernel space. The implementation strategies involve:\n\nAnalysis in user/kernel space.\nAnalysis in an emulator.\nAnalysis in a virtual machine.\n\nThe technique for resetting the analysis environment is also essential because results are only comparable if each sample is executed in an identical environment. Moreover, the network simulation method simulates the network so that the malware’s behavior requiring the network can be observed. Generic detection and reconstruction of packed code are devised to deobfuscate binaries that are obfuscated with unknown packers. There are many tools using the different techniques mentioned above. The paper gives a summary describing which strategies are implemented for each tool. A discussion on the approaches, possible evasion techniques, and advantages over other approaches is given as well.\nEnglish Learning\n\n\nwords:\nvendor\ndiscriminate, differentiate, distinguish, discrepency\nmalicious, malware, malvolent\nlegitimate\nspam (spam email)\nsurreptitiously\ncredential (banking credential)\nsophisticated (knowledgeable)\nmitigation (the detection and mitigation of malicious sorftware)\ntedious (a tedious and error-prone task)\ninherently (naturally)\ntailored (specifically tailored malware, tailored suit)\ncoordinated (in a coordinated manner)\ntamper (interfere, tamper with operating system)\ncommodity (commodity off-the-shelf operating system)\nnefarious\nlure\nevasion, circumvent (evade), disguise, conceal\nflaw (demerit)\nambiguous (uncertain)\nexacerbate (make worse)\nthwart, intercept, encumber (burden), preclude, cease (stop)\nresilient (flexible)\nintricate, curbersome, elaborate, opaque (complex)\napplicability, feasibility\nviable (workable)\nleak\ncloak\n\n\nphrases:\npose a threat to\nemploy techniques\nstrive to do (make every effort)\ntime-consuming (tedious)\nerror-prone\nat the expense of\nin combat against\nfamiliarize … with … (familiarize the reader with the technology that we will be using in the remainder of this work)\npoint of view\nshed light on\ntamper-proof\nhandle over\ncloak the slowdown\nsteer number of (a large number of)\nexhibit the characteristics of\n\n\ntechnical words:\northogonal\nobfuscate (encrypt), deobfuscate (decrypt)\ntaxonomy\nemulator\noverlay\n\n\ntechnical phrases:\nintended function\nreconvergence point\nanalysis component, analysis functionality\n\n\n","tags":["program analysis, paper reading, summary"]},{"title":"A Survey of Dynamic Analysis and Test Generation for JavaScript","url":"/home/2023/11/06/paper-reading-2023-11-06-A-Survey-of-Dynamic-Analysis-and-Test-Generation-for-JavaScript/","content":"Summary\nThis paper was written by Anders Moller et al. and published on ACM Computing Surveys in September 2017. It mainly introduces dynamic analysis and test generation for JavaScript, of the challenges, the related approaches, and the future directions. Analysis of JavaScript is challenging because of its dynamic features, such as dynamic typing, dynamic code loading, and dynamic object creation. Dynamic analysis is more amenable than static analysis due to the dynamic features. A multitude of approaches are investigated, aimed at alleviating correctness and reliability issues, addressing security and privacy issues, improving performance, and making developers more productive. On the flip side, test generation is deeply discussed in this paper, which is a promising approach to improve the quality of JavaScript programs. Three frameworks are resumed to implement test generators: Artemis, Crawljax, and Jalangi. Artemis and Crawljax exploit event and value space, while Jalangi only uses value space. In addition, Jalangi and Crawljax have a plugin-based architecture, providing an easy way for others to build on these frameworks. Despite all the advances in analyzing JavaScript programs, various research challenges remain to be addressed. These include improved support for code refactoring and program repair, analyses targeted at emerging platforms and usage scenarios of JavaScript, and combinations of test generation and dynamic analysis.\nEnglish Learning\n\n\nwords:\nanticipate (expect)\nheterogeneous (varied)\ncompound (intensify, is compounded by the fact that)\namenable (receptive)\nnominal, titular (in name only)\noblivious (unaware)\nlikewise\nproprietary\nextent\nbenign (harmless)\nalleviate (ease, alleviate issues)\npitfall (trap, bug)\nidiom\nsuspiciously (doubtfully)\nsymptom\npreemption (seizure)\nglitch (problem)\npioneer\ndivergence\npersistent\nmanifold (numerous)\nmediate (intervene)\nmagnitude (immensity)\nsynthetic\nfacet\nresume (begain again)\nprohibit (prevent)\nfidelity (accuracy)\nmetric\ncondensed (concentrated)\nimpact (influence)\nprovenance (origin)\nrecurring (recurring root causes)\nelude, side-stepping (evade)\nhereby\nsupersede (replace)\ncriteria\nbrittle\nevolve\nemerging\n\n\nphrases:\naddress the challenge\\issue\nthis limitation have triggered research on program analysis for JavaScript\nexercise the program\nimpose a challenge\nto the best of our knowledge\non the flip side\ndeploy software\nresort to (utilize)\nad hoc\nsteer … to …\nalign … with …\nemit events\non par with\na multitude of\nan order of magnitude\n\n\ntechnical words:\nencapsulation\ncompatibility\nartifact\n\n\ntechnical phrases:\nprototype-based inheritance\nevent-driven\nfine-grained\nnon-homogeneity\ntype coercions\nnull pointer dereference\n\n\n","tags":["program analysis for dynanmic language, paper reading, summary"]},{"title":"CentOS 8 设置github代理","url":"/home/2024/01/17/Tech-summary-git-proxy-config/","content":"1. 设置http, https代理(针对http(s)协议的git仓库,如http(s)://git-package.com)\n不需要为github单独设置代理,git默认使用系统的http_proxy,https_proxy变量,所以只需要设置系统的代理即可。\n2. 设置ssh代理(针对git+ssh协议的git仓库,如git@github:git-package)\n在~/.ssh/config中添加如下内容:\n Host github.com User git Hostname ssh.github.com Port 443 ProxyCommand nc --proxy 127.0.0.1:1083(代理类型对应端口,默认http类型) (--proxy-type 其他代理类型) %h %p\n不需要再额外设置系统的任何proxy变量。man ncat查看ncat的帮助文档。\n","categories":["技术博客"],"tags":["github","vpn"]},{"title":"hexo博客挂载到github pages","url":"/home/2022/01/09/Tech-summary-hexo%E5%8D%9A%E5%AE%A2%E6%8C%82%E8%BD%BD%E5%88%B0github/","content":"1.按照github pages的官方文档教程建立自己的github网站。\n2.按照hexo的官方文档安装hexo。\n3.重点来了,如何将hexo生成的静态网页自动推到github上?(有坑)\n\n安装插件hexo-deployer-git:\n\nnpm install --save hexo-deployer-git\n\n修改blog根目录里的_config.yml文件:(有坑)\n\n网上教程需要修改\ndeploy: type: git repo: your git website repository branch: your branch\n实测还需要修改\nurl: websiteroot: your webstie root\n修改完成执行命令即可\nhexo clean hexo g hexo d","categories":["技术博客"],"tags":["hexo","github pages"]}]