首页
学习
活动
专区
工具
TVP
发布

10km的专栏

专栏成员
553
文章
1201834
阅读量
51
订阅数
jsqlparser:实现基于SQL语法分析的SQL注入攻击检查
之前写过一篇博客:《java:正则表达式检查SQL WHERE条件语句防止注入攻击和常量表达式》,当前时通过正则表达式来检查SQL语句中是否有危险关键字和常量表达式实现SQL语句的注入攻击检查。坦率的说,这个办法是有漏洞的,误判,漏判的概率很大,基于当前我的知识能力,也只能做到这样。 最近学习了jsqlparser,我知道我找到了更好的办法来解决SQL注入攻击检查问题。 jsqlparser是一个java的SQL语句解析器,在上一篇博客:《jsqlparser:基于抽象语法树(AST)遍历SQL语句的语法元素》介绍了如何通过jsqlparser来遍历SQL语句中所有的字段和表名引用。 其实它可以用来进行更复杂的工作,jsqlparser会将一条SQL语句的各种语法元素以抽象语法树(AST,abstract syntax tree)形式解析为很多不同类型对象,通过对AST的遍历就可以对SQL语句进行分析。采用这种方式做SQL注入攻击检查不会有误判,漏判的问题。
10km
2022-11-16
2.6K0
java:commons-configuration2与spring的集成
commons-configuration2是apache基金会旗下的开源库,提供了强大的配置文件管理功能,使 Java 应用程序能够从各种来源读取配置数据,可以从以下来源加载配置参数: Properties files XML documents Windows INI files Property list files (plist) JNDI JDBC Datasource System properties Applet parameters Servlet parameters YAML 而且支持多个配置文件组合配置对象以及表达式。总的来说功能要比spring内置的yaml提供更丰富的配置支持, commons-configuration2还很贴心的提供了与Spring集成的实现。
10km
2022-09-30
5250
java:蛇形命名法格式(snake-case)字符串变量名转驼峰命名法格式(camel-case)
在变量命名的习惯方法有多种,不同的语言变量都有约定俗成的命名方式,比如常见就是蛇峰命名法(camel-case)和蛇形命名法(snake-case),比如Java中的命名习惯就是用camel-case,而SQL语言和C语言这些历史更久的设计语言命名习惯是snake-case.
10km
2022-09-26
1.4K0
OpenCL Installable Client Driver (ICD) Loader编译
OpenCL Installable Client Driver (ICD) Loader是实现OpenCL应用程序与各硬件厂商提供的OpenCL驱动(platform)之间隔离的中间库。
10km
2022-05-07
1.3K0
conan入门(二十):封装只包含头文件(header_only)的库示例
有的C/C++项目只包含头文件,不需要编译,对于这种情况如何封装为Conan的包呢?
10km
2022-04-13
6170
conan入门(十九):封装第三方开源库cpp_redis示例
在我的之前关于conan系列博客中,已经介绍过如何引用Conan中央仓库(conan-center)预定义的第三库(《conan入门(五):conan 交叉编译引用第三方库示例》),以及如何将自己的项目封装为Conan包以供第三方引用(《conan入门(七):将自己的项目生成conan包》)。
10km
2022-04-13
1.3K0
verrelcm:cmake项目版本发布脚本工具
最近经常设计C/C++的中间件,版本稳定了就要在git上打个标签(tag),修改CMakeLists.txt中的版本号,还要更新头文件中定义的版本号。更新一个版本号,需要修改两个地方,还要执行git几个命令,一统操作下要花几分钟,搞不好还会出错,要是漏掉点啥也不一定,毕竟手工操作嘛。 我做Java项目的时候,这都不是问题,因为maven的release插件可以自动帮我完成上面的所有操作,我只需要指定版本号就成了。 于是我就写了这个verrelcm.sh脚本
10km
2022-04-13
4470
cmake:ESP32交叉编译工具链定义
ESP32的SDK(ESP-IDF)本身提供了esp32平台的cmake toolchain文件: esp-idf-v4.4\tools\cmake\toolchain-esp32.cmake 1就是esp32的工具链文件定义样板。如下:
10km
2022-04-13
1K0
java:正则表达式检查SQL WHERE条件语句防止注入攻击和常量表达式
防止外部输入的SQL语句包含注入式攻击代码,主要作法就是对字符串进行关键字检查,禁止不应该出现在SQL语句中的关键字如 union delete等等,同时还要允许这些字符串作为常量字符串中的内容出现在SQL 语句中。
10km
2021-12-17
3.4K0
eRPC:修改erpcgen代码生成模板增加#if#endif宏定义,解决多个eRPC服务共用时类型重复定义问题
最近在用eRPC(https://github.com/EmbeddedRPC/erpc)实现通信时,发现一个问题, 当有两个以上eRPC服务共用时会存在类型重定义问题,比如binary_t会在每个eRPC服务的头文件中定义一次。 解决这个问题只能修改erpcgen的模板,还好,eRPC模板代码结构比较清晰,很快就找到生成eRPC服务接口头文件的位置(${ERPC_ROOT}/erpcgen/src/templates/c_common_header.template) 只要添加类似如下的宏定义就可以解决问题
10km
2020-10-29
7740
java (多网卡环境下)发送组播广播(multicast/broadcast)失败问题
java发送组播或广播包并不复杂网上有很多文章,比如下面的两篇: 《Java实现组播(multicast)简单例子》 《Java 网络编程案例:使用 MulticastSocket 实现多点广播》 这些例子都大同小异,拿来就可以用,我刚开始使用组播/广播时就是这样抄个例子,编译,运行,收到消息—完美
10km
2020-09-07
3.7K0
maven: 解决 release to oss.sonatype.org 报错:SSL peer shut down incorrectly
今天执行mvn release:perform发布项目jar包到maven中央仓库时报了如下错误导致发布失败:
10km
2020-06-09
3.9K0
C++11模版元编程:如何判断一个类型是完整类型(complete type)
什么是完整类型(complete type)? 要明白这个概念不如先从不完整类型(incomplete type)开始. 简单说,如果在编译期编译器能计算出一个类型的size,那么它就是一个完整类型,否则就是不完整类型。
10km
2020-04-30
1.5K0
c++11:枚举类型(enum)的前向声明(forward declaration)
在C++11之前,C++标准是不支持枚举类型的前向声明的。我说出这个结论,肯定有用msvc的童鞋不愿意了:口胡,MSVC明明就可以对枚举类型前向声明,下面这样的前向声明在MSVC下好好的,没有任何问题。
10km
2020-03-26
4.3K0
NV21转RGB或BGR的java实现和C实现
NV21是android平台摄像设备输出的标准格式,经常需要将它转为RGB或BGR格式, 以下是NV21格式图像矩阵转为RGB/BGR的实现代码,代码在windows/linux/android平台测试通过.
10km
2020-03-18
3.2K0
maven:从命令行(commandline)读取取pom.xml中的属性(property)
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
10km
2019-12-02
3.1K0
nanohttpd:实现跨域(CORS)请求
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
10km
2019-10-22
2.3K0
shell:获取git当前分支或tag
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
10km
2019-09-06
12.2K0
linux/bash:map作为参数传递给function
在linux bash中map是作为数组处理的,不能作为参数直接传递函数,如果一定要传递给函数,要做一些变通处理,示例如下:
10km
2019-08-14
2.6K0
java:组播通讯示例
在局域网内,组播通讯还是很有用处的,以下代码基于MulticastSocket类进一步封装更加方便的实现组播数据发送和组播数据接收功能。
10km
2019-07-12
1.5K0
点击加载更多
社区活动
【纪录片】中国数据库前世今生
穿越半个世纪,探寻中国数据库50年的发展历程
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档