In general, a combo exit program can be set up in the main activity.
@Override//Press the two back key to exit.public boolean onKeyDown(int keyCode, KeyEvent event) { //Get the key and compare two times back time is greater than 2S do not quit, otherwise quit if (keyCode == KeyEvent.KEYCODE_BACK && event.getAction() == KeyEvent.ACTION_DOWN) { if (System.currentTimeMillis() - exit_time > 2000) { Toast.makeText(MainActivity.this, "Then press Toast.LENGTH_SHORT.Show () again. exit_time = System.currentTimeMillis(); } else { finish()...
Presumably all the CTF guys have touched the Android converse more or less, so Big Brother is going to give you a whole series of static and dynamic analysis of the Android converse. This installment begins with a static analysis of the Android reverse, including the use of reverse tools, file descriptions, example parsing, and so on..
AndroidReverse is the process of decompilation, because you do not understand the Android forward compiled results, so the premise of static analysis in CTF is to decompile the file appears to us to understand a layer of source code, static analysis.
0X01 Basic...
Template mode, as the name implies, is through the way of template rubbing.
Defining templates is defining frameworks, structures, and prototypes. Define an agreement that we always abide by.
Defining the template, our remaining work is to enrich it, enrich it, and improve its shortcomings.
Definition templates are defined by abstract classes. Common structured logic needs to be completed in abstract classes. Only non-public partial logic is abstracted into abstract methods, leaving the subclasses to enrich the implementation.
So the shortcomings mentioned above are th...
html:
<ul class="code_ul">
</ul>
css:
.code_ul>li{
color: #00a28c6c;
display: -webkit-flex;
height: .4rem;
line-height: .4rem;
font-weight: 600;
font-size: .14rem;
align-items: center;
}
.code_ul>li .button{
flex: 1;
width: .6rem;
color: #fff;
background: #ff6c72;
border:none;
border-radius: 20px;
text-align: center;
margin-left:.3rem;
}
js:
Here is the addition of dynamic data.
1 if (res.code == 1) {
2 res.data.forEach(function (element, ind) {
3 ...
IPAddress and port number
Port numbers are represented by two bytes (16-bit binary numbers) and range from 0 to 65535, where the port numbers between 0 and 1023 are used for some well-known network services and applications.
A user’s normal application needs to use port numbers above 1024 to avoid being occupied by another application or service.
InetAddress
common method
Code demo:
UDPSignal communication
DatagramPacket
DatagramSocket
UDPNetwork program
Code demo:
1 //Sending end2 public class UDPSend {3 public static void main (String[] args) thr...
Springboot projects are packaged into jars, uploaded to the server, each time you need to tap commands to redeploy the project, which you can write to the script and run directly.
Startup script (start.sh):
CUR_PATH=$(cd "$(dirname "$0")"; pwd)
echo "Current path: ${CUR_PATH}"
/usr/lib/java-1.8.0/jdk1.8.0_161/bin/java -jar ${CUR_PATH}/***.jar
The red part of the code, which specifies the start of the JDK (the JDK configured by the environment variable in the server is 7, the project is based on spring boot 2.0 and requires 8.0 +) for the JDK), can be used directly.javaInstead.
***It is the ...
webPostman software is often used in development. the common method involves get and post methods to get the corresponding JSON data. get method can pass URL directly and return the corresponding JSON data. However, post requests require JSON data to be submitted, and in SeThe rvlet side gets the corresponding JSON data through the getParameters (“XXXX”) method, so it involves how postman transfers the JSON data with the parameters.
General interfaces are standard JSON data for transmission. For example, if the servlet side receives a parameter with the name requestData, you can s...
1.JConsole
JConsoleUnder the JDK / bin directory, after starting JConsole, the tool automatically searches for JVM processes running natively without the JPS command to query for specifications. Double-click on one of the JVM processes to start monitoring, or use Remote Processes to connect to a remote server.
To enter the JConsole main interface, there are six tabs: “Overview”, “Memory”, “Thread”, “Class”, “VM Summary” and “Mbean”:
Memory tabs are the jstat commands used to monitor trends in virtual mach...